zoukankan      html  css  js  c++  java
  • GetPrivateProfileString() 当 key 包含空格时,需要进行转义

    使用 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:	ommy.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:	ommy.ini";
    StringBuilder sb = new StringBuilder(255);
    GetPrivateProfileString(section, keyName, "", sb, 261, filePath);

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

  • 相关阅读:
    leetcode刷题-54螺旋矩阵
    leetcode刷题-53最大子序和
    leetcode刷题-52N皇后2
    leetcode刷题-51N皇后
    leetcode刷题-50Pow(x, n)
    leetcode刷题-37解数独
    leetcode刷题-49字母异位词分组
    leetcode刷题-48旋转图像
    数据结构—B树、B+树、B*树
    LeetCode–旋转数组的最小数字
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/12080226.html
Copyright © 2011-2022 走看看