導航:首頁 > 文件管理 > 如何寫c配置文件

如何寫c配置文件

發布時間:2023-01-27 00:33:15

『壹』 怎樣編寫Cmake的配置文件Cmakelist.txt

1

Cmake 有linux ,windows 多個平台版本,如圖是windows下版本程序

『貳』 用C#如何讀寫配置文件

INI文件就是擴展名為"ini"的文件。
其一般形式如下:
[section1] // 配置節
//鍵名 //鍵值
keyword1 = valuel
keyword2 = value2
……
[section2]
keyword3 = value3
keyword4 = value4
在Windows系統中,INI文件是很多,最重要的就是"System.ini"、"System32.ini"和"Win.ini"。該文件主要存放用戶所做的選擇以及系統的各種參數。用戶可以通過修改INI文件,來改變應用程序和系統的很多配置。但自從Windows 95的退出,在Windows系統中引入了注冊表的概念,INI文件在Windows系統的地位就開始不斷下滑,這是因為注冊表的獨特優點,使應用程序和系統都把許多參數和初始化信息放進了注冊表中。以及XML文件的國際標准化給INI文件又一次打擊。
但在某些場合,INI文件還擁有其不可替代的地位。比如綠色軟體的規定就是不向注冊表和系統中填入新東西。對於軟體需要儲存的信息就需要存入到文件中了。XML雖然兼容性比較好,但對於僅僅保存幾個自定義參數而言就顯得大材小用了。這是就可以選擇使用快速簡單的儲存方式:INI文件。
本文就來探討一下C#是如何對INI進行讀寫操作。
主要思路是調用Win32 API。
1.引入命名空間
usingSystem.Runtime.InteropServices;
2.聲明(把一個Win32 API函數轉成C#函數)
//聲明INI文件的寫操作函數 WritePrivateProfileString()
[DllImport("kernel32")]
private static extern longWritePrivateProfileString(string section, string key, string val, stringfilePath);
//聲明INI文件的讀操作函數 GetPrivateProfileString()
[DllImport("kernel32")]
private static extern intGetPrivateProfileString(string section, string key, string def, StringBuilderretVal, int size, string filePath);
3.函數
public void Writue(string section,string key, string value)
{
// section=配置節,key=鍵名,value=鍵值,path=路徑
WritePrivateProfileString(section,key, value, sPath);
}
public string ReadValue(stringsection, string key)
{
// 每次從ini中讀取多少位元組
System.Text.StringBuilder temp =new System.Text.StringBuilder(255);
// section=配置節,key=鍵名,temp=上面,path=路徑
GetPrivateProfileString(section,key, "", temp, 255, sPath);
returntemp.ToString(); //注意類型的轉換
}
到此基本功能已經實現了。下面我們將所有的代碼重新整合一下:
namespace Library.File
{
public class Ini
{
// 聲明INI文件的寫操作函數 WritePrivateProfileString()
[System.Runtime.InteropServices.DllImport("kernel32")]
private static extern longWritePrivateProfileString(string section, string key, string val, stringfilePath);
// 聲明INI文件的讀操作函數 GetPrivateProfileString()
[System.Runtime.InteropServices.DllImport("kernel32")]
private static extern intGetPrivateProfileString(string section, string key, string def,System.Text.StringBuilder retVal, int size, string filePath);
private string sPath = null;
public Ini(string path)
{
this.sPath = path;
}
public void Writue(string section,string key, string value)
{
// section=配置節,key=鍵名,value=鍵值,path=路徑
WritePrivateProfileString(section,key, value, sPath);
}
public string ReadValue(stringsection, string key)
{
// 每次從ini中讀取多少位元組
System.Text.StringBuilder temp =new System.Text.StringBuilder(255);
// section=配置節,key=鍵名,temp=上面,path=路徑
GetPrivateProfileString(section,key, "", temp, 255, sPath);
return temp.ToString();
}
}
}
開始調用函數。
// 寫入ini
Ini ini = newIni("C:/config.ini");
ini.Writue("Setting","key1", "HELLO WORLD!");
ini.Writue("Setting","key2", "HELLO CHINA!");
// 讀取ini
Ini ini = newIni("C:/config.ini");
string str1 =ini.ReadValue("Setting", "key1");
MessageBox.Show(str1);
二,在一些小的應用中,有時候不需要使用數據困這樣大規模的數據管理工具,也很少進行數據的查詢、修改等操作,而僅用文件來存儲數據。這時就需要使用。net中的文件操作對象,如file、streamReader、streamWriter等。
1,使用File對象操作文件
System.IO.File類提供了一系類的靜態辦法,完成對晚間的常用操作,如新建、刪除、拷貝、移動等
2,使用StreamWriter寫入文件
在System.IO空間中定義了一個文件寫入器對象StreamWriter,使用它可以以一種特定的編碼向輸出流中(Stream)寫入字元。
3,使用SteamReader讀取文件
與streamWrite對應

『叄』 怎樣編寫Cmake的配置文件Cmakelist.txt

CMake是一個編譯配置工具, 它是一個跨平台c/c++ 編譯配置工具。可以通過編寫CMakeLists.txt配置文件,可以控制生成的Makefile或者windows下工程文件。還支持安裝(make install)、測試安裝的程序是否能正確執行(make test,或者ctest)、生成當前平台的安裝包(make package)、生成源碼包(make package_source)、產生Dashboard顯示數據並上傳等高級功能,只要在CMakeLists.txt中簡單配置,就可以完成很多復雜的功能,包括寫測試用例。

如果有嵌套目錄,子目錄下可以有自己的CMakeLists.txt。

所以寫好CMakeLists.txt 是使用好Cmake的關鍵

工具/原料
Cmake
方法/步驟
1
Cmake 有linux ,windows 多個平台版本,如圖是windows下版本程序
怎樣編寫Cmake的配置文件Cmakelist.txt
2
更具一個簡單多目錄c項目,學下cmakelist.txt編寫規范
3

根目錄下cmakelist文件內容:
set(CMAKE_INSTALL_PREFIX):設置程序的安裝目錄,優先順序比cmake命令參數設置高。
add_subdirectory(編譯文件子目錄)
4

libhello 目錄下的cmakelist文件內容:
5

libhello 目錄下的cmakelist文件內容:
6

查看編譯後結果:
7

安裝後目錄結構:

『肆』 標准C語言,修改配置文件

在1.1後面帶空格
只要該行數據的最大長度確定,在你這行數據確定後,內不足部分全部用空格覆蓋。容
比如ver=1.0.2現在的長度是9個字元,如果我確定這行內容不會超過12個字元,那後面的內容我可以全用空格覆蓋,最後只要加個回車即可。

不知道你所謂的以後改不方便指什麼

『伍』 c語言讀寫配置文件

#include <stdio.h>
#include <string.h>

#define MAX_BUF 20
#define SERVER "localhost"
#define CONFIG_FILE "1.conf"

bool SetAuthServer(char* strServerAdd)
{
char buf[MAX_BUF], tempBuf[MAX_BUF];
memset(buf, 0, MAX_BUF);
memset(tempBuf, 0, MAX_BUF);
FILE *pF = fopen(CONFIG_FILE, "r");
if(!pF)
{
printf("打開文件失敗!\n");
return false;
}
fread(buf, MAX_BUF, 1, pF);
if(!feof(pF))
{
printf("讀取不完整,請把MAX_BUF設置為大一點, 當前大小為: %d\n", MAX_BUF);
fclose(pF);
return false;
}
fclose(pF);
char *lpPos = buf;
char *lpNewPos = buf;
while(lpNewPos = strstr(lpPos, SERVER))
{
strncpy(tempBuf+strlen(tempBuf), lpPos, lpNewPos-lpPos);
strcat(tempBuf, strServerAdd);
lpPos = lpNewPos + strlen(SERVER);
}

strcat(tempBuf, lpPos);
pF = fopen(CONFIG_FILE, "w");
if(!pF)
{
printf("打開文件失敗!\n");
return false;
}
fwrite(tempBuf, strlen(tempBuf), 1, pF);
fclose(pF);
return true;
}

void main()
{
char buf[20];

printf("請輸入一個字元串來修改伺服器配置: ");
scanf("%s", buf);
if(SetAuthServer(buf) == true)
printf("修改成功!\n");
else
printf("修改失敗!\n");

}

閱讀全文

與如何寫c配置文件相關的資料

熱點內容
剛復制的文件找不到怎麼辦 瀏覽:724
試運行適用於哪些體系文件 瀏覽:987
ghost文件復制很慢 瀏覽:967
傑德原車導航升級 瀏覽:240
編程dest是什麼意思 瀏覽:935
linux埠鏡像 瀏覽:820
iphone5屏幕清塵 瀏覽:157
機頂盒密碼怎麼改 瀏覽:672
w7系統下載32位教程 瀏覽:618
pcb文件包括哪些內容 瀏覽:598
g00文件 瀏覽:607
用bat程序刪除程序 瀏覽:516
dnf鬼泣90版本打安圖恩 瀏覽:668
245倒角編程怎麼計算 瀏覽:599
可以買生活用品的app有哪些 瀏覽:175
cad在c盤產生的文件夾 瀏覽:541
聯想手機解鎖工具 瀏覽:696
瑞銀3887win10 瀏覽:833
學網路編程哪個好 瀏覽:805
手機vmos導入的文件在哪裡 瀏覽:115

友情鏈接