快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

unity3d右键快速打开文件-创新互联

在开发中如果只是想快速查看某个(如.lua)文件的话,可以活用右键功能,这个在打开多个工程并调试的情况下略显高效。

成都创新互联专注于企业全网整合营销推广、网站重做改版、曲靖网站定制设计、自适应品牌网站建设、H5网站设计商城网站制作、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为曲靖等各大城市提供网站开发制作服务。

如图:

写了一个工具类,并添加了两个方法:可选用notepad++或记事本快速打开文件。

代码如下:

using UnityEngine;
using System.Collections;
using UnityEditor;
using thisObject = UnityEngine.Object;
using System.Threading;
using System;

public class EasyTool
{
    const int OpenMax = 10; //一次打开文件的大数量

    const string NotePadJJ_APP_NAME = "notepad++.exe";
    const string NotePad_APP_NAME = "notepad.exe";

    /// 
    /// 用notepad++打开文件
    /// 
    [MenuItem("Assets/EasyTool/Open_NotePad++")]
    static public void OpenForNotePadJJ()
    {
        int count = 0;
        foreach (var go in GetSelectObject())
        {
            if (go != null)
            {
                string dir_path = GetPath(go);

                InvokeCmd(NotePadJJ_APP_NAME, dir_path);
            }

            count++;

            if (count > OpenMax)
            {
                break;
            }
        }
    }

    // 
    /// 用记事本打开文件
    /// 
    [MenuItem("Assets/EasyTool/Open_NotePad")]
    static public void OpenForNotePad()
    {
        int count = 0;
        foreach (var go in GetSelectObject())
        {
            if (go != null)
            {
                string dir_path = GetPath(go);

                InvokeCmd(NotePad_APP_NAME, dir_path);

                count++;

                if (count > OpenMax)
                {
                    break;
                }
            }
        }
    }


    /// 
    /// 调用CMD 命令
    /// 
    public static void InvokeCmd(string cmd, string dir_path)
    {
        UnityEngine.Debug.Log(cmd);
        AssetDatabase.Refresh();
        new Thread(new ThreadStart(() =>
        {
            try
            {
                System.Diagnostics.Process p = new System.Diagnostics.Process();
                p.StartInfo.FileName = cmd;
                p.StartInfo.Arguments = dir_path;
                p.Start();
                p.WaitForExit();
                p.Close();
            }
            catch (Exception e)
            {
                Debug.Log(e.Message);
            }
        })).Start();
    }


    /// 
    /// 获取选择的文件
    /// 
    /// 
    static public thisObject[] GetSelectObject()
    {
        if (Selection.objects.Length == 0)
        {
            return new thisObject[0];
        }

        return Selection.objects;
    }


    /// 
    /// 获取文件路径
    /// 
    /// 
    /// 
    static public string GetPath(thisObject go)
    {
        string str = Application.dataPath.Replace("Assets", "");
        string path = AssetDatabase.GetAssetPath(go);
        string dir_path = System.IO.Path.GetFullPath(str + path);
        return dir_path;
    }

}

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:unity3d右键快速打开文件-创新互联
文章转载:http://6mz.cn/article/ccspsp.html

其他资讯