首页 > 其他 > 详细

GetPrivateProfileString() 当 key 包含空格时,需要进行转义

时间:2019-12-22 17:44:21      阅读:149      评论:0      收藏:0      [点我收藏+]

使用 GetPrivateProfileString() 方法可以方便的读取 ini 格式文件中的内容,如:

[section]
tommy = worker

使用 C# 读取如下:

1. 先引入 GetPrivateProfileString() 方法

[DllImport("kernel32.dll", EntryPoint = "GetPrivateProfileString")]
public static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName);

2. 调用

string keyName = "tommy";
string filePath = @"D:\tommy.ini";
StringBuilder sb = new StringBuilder(255);
GetPrivateProfileString(section, keyName, "", sb, 261, filePath);

 

但是当 key 保护空格时,ini 文件就应该如下:

[section]
"tommy huang" = worker

此时的 C# 需要对 key 进行转义:

string keyName = "tommy huang";
keyName = "\"" + keyName + "\"";//进行转义
string filePath = @"D:\tommy.ini";
StringBuilder sb = new StringBuilder(255);
GetPrivateProfileString(section, keyName, "", sb, 261, filePath);

总结:
如果通过 GetPrivateProfileString() 方法读取 ini 格式文件时,如果 key 包含空格,先进行转义 "\"" + key + "\"";

GetPrivateProfileString() 当 key 包含空格时,需要进行转义

原文:https://www.cnblogs.com/tommy-huang/p/12080226.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!