開發不同語言版本的C 程式

2022-07-31 10:21:12 字數 1678 閱讀 2223

在c#中有多種使用資源檔案的方法,能夠很方便地開發全球通用的應用程式。本文通過乙個簡單的小例子,來講解在c#中如何利用資源檔案,快速開發乙個多種語言版本的程式。本例中只有乙個窗體,三個控制項,能夠根據使用者的設定以中文或英文介面執行。開發環境是windows 2000 professional、microsoft visual studio.net 2002。具體開發步驟如下:

一、新建專案

二、新增控制項

在form1 窗體上新增三個控制項(見圖1):主選單mainmenu、標籤label1和按鈕button1。label1和button1控制項的屬性均採用預設設定。mainmenu控制項中新增三個選單項menuitem1、menuitem2、menuitem3。text屬性分別設為「語言」、「中文」和「english」。menuitem2、

menuitem3 的radiocheck屬性設為true。

圖 1  三、建立配置檔案 

四、建立資源檔案

.net中的資源檔案有三種: 文字(.txt )檔案、xml 格式的.resx 檔案和.resources 檔案。文字檔案只能包含形如「 名稱= 值」格式的字串資源。.resx檔案和.resources 檔案中不僅能儲存字串資源,還能儲存影象等可序列化的持久物件資源。但是只有.resources 檔案格式的資源檔案才能被嵌入到執行庫可執行檔案中,或被編譯為附屬程式集。利用visual studio .net 中自帶的資源檔案生成器

(resgen.exe),可以將.txt檔案和.resx檔案轉換為.resources 檔案格式。本例中只用到了字串資源,所以在專案中新增兩個文字檔案resource_zh.txt 和reource_en.txt。

reource_en.txt 檔案中的內容:

menuitem1_name=language

button1_name=exit

label1_text=this is english version!

resource_zh.txt 檔案中的內容:

menuitem1_name=語言

button1_name=退出

label1_text=這是中文版!

需要注意的是resource_zh.txt檔案中含有漢字,必須以utf-8編碼儲存。在visual studio .net整合開發環境中,可以先點選「檔案」選單中的「高階儲存選項」,選中utf-8編碼格式,再儲存檔案。

resources

五、修改**

1、在**的開頭新增需引用的命名空間。

using system.globalization;

using system.resources;

using system.threading;

using system.io;

2、在form1 中定義兩個欄位ci和rm。cultureinfo物件ci用來指定讀取資源檔案時的區域性。resourcemanager物件rm用來在指定的資源檔案中讀取資源。

cultureinfo ci = new cultureinfo("");

3、在form1中新增乙個方法readresources,用來讀取相應資源檔案中的字串資源,來修改介面選單、標籤和按鈕上文字顯示。

private void readresources(){

this.menuitem1.text = rm.getstring("menuitem1_text",ci) ;

coco2d開發 不同版本不同方法

需要實現 cllocationmanagerdelegate,mkreversegeocoderdelegate 並匯入corelocation 框架。使用方法 如下 pragma mark 獲取城市名稱 iso 5.0 以下版本使用此方法 void startedreversegeoderwith...

如何開發乙個多種語言版本的C 程式

在c 中有多種使用資源檔案的方法,能夠很方便地開發全球通用的應用程式。本文通過乙個簡單的小例子,來講解在c 中如何利用資源檔案,快速開發乙個多種語言版本的程式。本例中只有乙個窗體,三個控制項,能夠根據使用者的設定以中文或英文介面執行。開發環境是windows 2000 professional mi...

C語言版本的opencl的用法

本文介紹一下c語言使用opencl的基本步驟,系統是windows10,ide是visual studio2017。step1 你需要安裝一下opencl的windows版本,然後新建乙個工程,在屬性管理器裡面給這個工程匯入opencl的標頭檔案。step2 匯入標頭檔案 include inclu...