国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

如何一鍵把你的Unity腳本從GB2312編碼格式改成UTF8編碼格式

這篇具有很好參考價值的文章主要介紹了如何一鍵把你的Unity腳本從GB2312編碼格式改成UTF8編碼格式。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、GB2312和UTF8簡介

  • GB2312(全稱:中國國家標準GB2312-80字符集)和UTF-8(全稱:Unicode Transformation Format 8-bit)是兩種常見的字符編碼方案。它們分別用于對文本進行編碼,以在計算機系統(tǒng)和文件中存儲和表示字符。

  • GB2312:
    GB2312是一個用于簡化中文字符表示的字符編碼,是中國大陸的第一個漢字編碼標準。GB2312于1980年代發(fā)布,其中“GB”表示“國標”,即中國國家標準。GB2312涵蓋了約7,000個簡體中文字符、部分日文假名(平假名和片假名)、希臘字符、俄文字母、數(shù)學符號等。GB2312采用雙字節(jié)(即每個字符占用兩個字節(jié),位數(shù)為16位)編碼方案,支持已編碼字符的互換。

  • UTF-8:
    UTF-8是對Unicode字符集進行編碼的一種可變寬度編碼方案。Unicode是一個國際標準,覆蓋世界上幾乎所有的字符,包括各種文字、符號等。UTF-8是其中最常用的一種方式,因為它具有良好的兼容性,容易被許多軟件和操作系統(tǒng)所采用。

二、GB2312的“毛病”

unity string轉(zhuǎn)utf8,unity,游戲引擎,GB2312,UTF8

三、鼠標右鍵一鍵更改

(1)選中腳本,右鍵選擇菜單

unity string轉(zhuǎn)utf8,unity,游戲引擎,GB2312,UTF8

(2)執(zhí)行提示

unity string轉(zhuǎn)utf8,unity,游戲引擎,GB2312,UTF8

(3)檢查效果

中文正常顯示了
unity string轉(zhuǎn)utf8,unity,游戲引擎,GB2312,UTF8

四、實現(xiàn)的原理

(1)寫編輯器腳本

寫一個編輯器腳本,給Project視圖選中的物體添加一個右鍵菜單

[MenuItem("Assets/腳本改格式:GB2312->UTF8無BOM %g", true)]

(2)判斷該文件是不是csharp文件

    /// <summary>
    /// 判斷該文件是否是CSharp文件
    /// </summary>
    /// <param name="fileName"></param>
    /// <returns></returns>
    private static bool IsCSharpFile(string fileName)
    {
        // 獲取文件擴展名(包括點)
        string fileExtension = Path.GetExtension(fileName);

        // 將擴展名轉(zhuǎn)換為小寫并與 ".cs" 進行比較
        if (fileExtension.ToLower() == ".cs")
        {
            return true;
        }

        return false;
    }

(3)更改編碼格式

  /// <summary>
    /// 文件格式轉(zhuǎn)碼:GB2312轉(zhuǎn)成UTF8
    /// 讀取指定的文件,轉(zhuǎn)換成UTF8(無BOM標記)格式后,回寫覆蓋原文件
    /// </summary>
    /// <param name="sourceFilePath">文件路徑</param>
    public static void ChangeFormat(string sourceFilePath)
    {
        string fileContent = File.ReadAllText(sourceFilePath, Encoding.GetEncoding("GB2312"));
        File.WriteAllText(sourceFilePath, fileContent, Encoding.UTF8);
        Debug.Log("處理結(jié)束!");
    }

五、腳本使用

把該文件拷貝到項目中,Editor文件夾下即可
unity string轉(zhuǎn)utf8,unity,游戲引擎,GB2312,UTF8文章來源地址http://www.zghlxwxcb.cn/news/detail-762633.html

六、源碼

using UnityEngine;
using UnityEditor;
using System.IO;
using System.Text;

public class ChangeScriptEncodingFormat
{
    // 添加一個右鍵菜單。
    // % 按下ctrl時顯示菜單。(Windows: control, macOS: command)
    // & 按下alt時顯示菜單。(Windows/Linux: alt, macOS: option)
    // _ 按下shift時顯示菜單。(Windows/Linux/macOS: shift)
    [MenuItem("Assets/腳本改格式:GB2312->UTF8無BOM %g", false, 100)]
    private static void CustomMenu()
    {
        // 例如: 獲取Project視圖中選定的對象
        Object selectedObject = Selection.activeObject;

        if (selectedObject != null)
        {
            // 獲取選定對象的相對路徑
            string relativeAssetPath = AssetDatabase.GetAssetPath(selectedObject);
            // 獲取項目根目錄路徑
            string projectPath = Path.GetDirectoryName(Application.dataPath);
            // 獲取選定對象的絕對路徑
            string absoluteAssetPath = Path.Combine(projectPath, relativeAssetPath);
            // 獲取選定對象的文件名(包括后綴)
            string fileName = Path.GetFileName(relativeAssetPath);

            Debug.Log("執(zhí)行自定義操作: " + selectedObject.name +
                      ", 相對路徑: " + relativeAssetPath +
                      ", 絕對路徑: " + absoluteAssetPath +
                      ", 文件名: " + fileName);

            //判斷是否是CSharp文件
            if (IsCSharpFile(fileName))
            {
                Debug.Log("這是一個csharp文件");
                ChangeFormat(absoluteAssetPath);
            }
            else
            {
                Debug.Log("兄弟,這不是一個csharp文件啊~~~~~~~~~~~");
            }
        }
        else
        {
            Debug.LogWarning("沒有選中任何對象.");
        }
    }

    // 如果項目視圖中有選中的對象,則啟用右鍵菜單項
    [MenuItem("Assets/腳本改格式:GB2312->UTF8無BOM %g", true)]
    private static bool ValidateCustomMenu()
    {
        return Selection.activeObject != null;
    }

    /// <summary>
    /// 判斷該文件是否是CSharp文件
    /// </summary>
    /// <param name="fileName"></param>
    /// <returns></returns>
    private static bool IsCSharpFile(string fileName)
    {
        // 獲取文件擴展名(包括點)
        string fileExtension = Path.GetExtension(fileName);

        // 將擴展名轉(zhuǎn)換為小寫并與 ".cs" 進行比較
        if (fileExtension.ToLower() == ".cs")
        {
            return true;
        }

        return false;
    }

    /// <summary>
    /// 文件格式轉(zhuǎn)碼:GB2312轉(zhuǎn)成UTF8
    /// 讀取指定的文件,轉(zhuǎn)換成UTF8(無BOM標記)格式后,回寫覆蓋原文件
    /// </summary>
    /// <param name="sourceFilePath">文件路徑</param>
    public static void ChangeFormat(string sourceFilePath)
    {
        string fileContent = File.ReadAllText(sourceFilePath, Encoding.GetEncoding("GB2312"));
        File.WriteAllText(sourceFilePath, fileContent, Encoding.UTF8);
        Debug.Log("處理結(jié)束!");
    }
}

到了這里,關(guān)于如何一鍵把你的Unity腳本從GB2312編碼格式改成UTF8編碼格式的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • Unity開發(fā)前的一些建議1_設(shè)置腳本的編碼格式,設(shè)置IDE的編碼格式

    Unity開發(fā)前的一些建議1_設(shè)置腳本的編碼格式,設(shè)置IDE的編碼格式

    亂碼之后是是不可以撤回的哦。 這么做的理由,Unity右側(cè)的 Inspector 面板看代碼是UTF-8格式的??梢栽?Inspector 中速覽代碼,且如果修改IDE,UTF-8比其他編碼格式用的更多。 VS2022使用的是GB2132,這就導致使用VS2022創(chuàng)建的項目在Rider中打開會亂碼,Rider使用的是UTF-8。 使用GB-2132編

    2024年02月11日
    瀏覽(22)
  • visio,word添加缺少字體,仿宋_GB2312、楷體_GB2312、方正小標宋簡體等字體下載

    visio,word添加缺少字體,仿宋_GB2312、楷體_GB2312、方正小標宋簡體等字體下載

    visio,word添加缺少字體,仿宋_GB2312、楷體_GB2312、方正小標宋簡體等字體下載 2.1 visio 3.1 下載字體 http://www.downza.cn/ 微軟官方給的鏈接好多字體沒有,其他好多字體網(wǎng)站,就是給你看個樣式,這個網(wǎng)站實測可以 進去以后直接搜索 然后查看,本地下載,會有一個壓縮包,然后解壓

    2024年02月14日
    瀏覽(57)
  • mac安裝仿宋GB2312字體

    mac安裝仿宋GB2312字體

    第一步:雙擊打開 仿宋_GB2312.ttf 完成字體安裝 【下載鏈接】 百度云: 鏈接: https://pan.baidu.com/s/1tsyEuNTQbTt99fYQ72JlWQ?pwd=7wa5 提取碼: 7wa5 CSDN: https://download.csdn.net/download/weixin_43312117/85709796 第二步:打開訪達,點擊應用程序,找到 word ,右鍵 顯示包內(nèi)容 ,打開 Contents 文件夾,打

    2024年02月17日
    瀏覽(12)
  • UTF-8、UTF-16、Unicode、GB2312、GBK、GB18030一次說清楚

    1、關(guān)于存儲編碼和顯示編碼的區(qū)別。 Unicode是顯示編碼,UTF-8、UTF-16、GB2312、GBK、GB18030都是存儲/傳輸方面使用,也叫做存儲編碼、處理編碼,你在計算機上看見的所有文字都從存儲編碼轉(zhuǎn)成顯示編碼后,顯示出來,當你單機保存時又從顯示編碼轉(zhuǎn)換為存儲編碼存儲起來。 2、

    2024年02月12日
    瀏覽(17)
  • Qt之GB2312\GBK字符與QString轉(zhuǎn)換

    在中國國內(nèi)與其它數(shù)據(jù)接口通訊時,經(jīng)常會遇到GB2312GBK格式的字符,這時需要進行數(shù)據(jù)格式轉(zhuǎn)換 否則只有ASCII碼正常,而其它就是亂碼。 在main.c文件下配置UTF-8 QString 為unicode碼,轉(zhuǎn)為GBK碼 將GB2312/GBK字符串轉(zhuǎn)化為QString

    2024年02月11日
    瀏覽(26)
  • 10 分鐘把你的 Web 應用轉(zhuǎn)為桌面端應用

    10 分鐘把你的 Web 應用轉(zhuǎn)為桌面端應用

    在桌面端應用上,Electron 也早已做大做強,GitHub桌面端、VSCode、Figma、Notion、飛書、剪映、得物都基于此。但最近后起之秀的 Tauri 也引人注目,它解決了 Electron 一個大的痛點—— 打包產(chǎn)物特別大 。 我們知道 Electron 基于谷歌內(nèi)核 Chromium 構(gòu)建,打包后無論應用多小,至少都得

    2023年04月21日
    瀏覽(20)
  • GB28181設(shè)備接入側(cè)如何對接外部編碼后音視頻數(shù)據(jù)并實現(xiàn)預覽播放

    GB28181設(shè)備接入側(cè)如何對接外部編碼后音視頻數(shù)據(jù)并實現(xiàn)預覽播放

    ?技術(shù)背景 我們在對接GB28181設(shè)備接入模塊的時候,遇到這樣的技術(shù)訴求,好多開發(fā)者期望能提供編碼后(H.264/H.265、AAC/PCMA)數(shù)據(jù)對接,確保外部采集設(shè)備,比如無人機類似回調(diào)過來的數(shù)據(jù),直接通過模塊,對接到GB28181平臺側(cè),此外,還期望不支持或者內(nèi)網(wǎng)沒有外部網(wǎng)絡權(quán)限

    2024年02月12日
    瀏覽(31)
  • 如何配置達夢數(shù)據(jù)庫使其支持GB18030-2022中文編碼字符集

    如何配置達夢數(shù)據(jù)庫使其支持GB18030-2022中文編碼字符集

    達夢版本要求,要求使用2023年4月及之后的達夢月度版版本,補丁版、臨時版等不可以。 正確安裝windows操作系統(tǒng),windows10以下的版本未做過測試,可能系統(tǒng)不支持導致各種顯示錯誤,建議用windows10及以上版本,本人親測過window10和windows11支持. 安裝一個字體覆蓋全的字庫,w

    2024年02月09日
    瀏覽(35)
  • [MySQL]數(shù)據(jù)庫原理2,Server,DataBase,Connection,latin1、UTF-8,gb2312,Encoding,Default Collation——喵喵期末不掛科

    [MySQL]數(shù)據(jù)庫原理2,Server,DataBase,Connection,latin1、UTF-8,gb2312,Encoding,Default Collation——喵喵期末不掛科

    希望你開心,希望你健康,希望你幸福,希望你點贊! 最后的最后,關(guān)注喵,關(guān)注喵,關(guān)注喵,佬佬會看到更多有趣的博客哦!?。?喵喵喵,你對我真的很重要! 目錄 前言 認識字符集和校對原則 MySQL 5.5支持的字符集和校對原則 常用字符集和校對原則 確定字符集和校對原

    2024年02月04日
    瀏覽(23)
  • 把你的 Python 技能從 “Hello World“ 升級到 “萬能鑰匙“:掌握 Python 的輸出、輸入、數(shù)據(jù)類型轉(zhuǎn)換和運算符!

    把你的 Python 技能從 “Hello World“ 升級到 “萬能鑰匙“:掌握 Python 的輸出、輸入、數(shù)據(jù)類型轉(zhuǎn)換和運算符!

    這篇文章我將為大家分享 python 的輸出、輸入、數(shù)據(jù)類型的轉(zhuǎn)換和運算符 相關(guān)的知識。如果大家也想跟著博主一起學習 python ,歡迎訂閱專欄哦python學習?? 我們都知道,要想知道程序的運行結(jié)果,就需要將結(jié)果給打印到屏幕上,那么 python 是怎樣將程序輸出到屏幕上的呢?這

    2024年02月11日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包