experiment: Unicode ini wrapper UTF16_LE BOM Operation

来源:互联网 发布:dnf驱魔技能改版数据 编辑:程序博客网 时间:2024/06/08 15:00

Introduction

一个好用的UnicodeIni类, 防止在繁体WinOS上建立的Ini文件,回到简体WinOS上,读取Ini内容时乱码


Download

prjUnicodeIni_V2012_0403_2211.rar

srcUnicodeIni-2013-1010-1923.rar


how to use


// srcUnicodeIni.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "UnicodeIni/UnicodeIni.h"#define G_INI_PATHNAME L"c:\\testUnicodeini.ini"#define G_INI_SECTION_NAME L"SectionName1"#define G_INI_KEY_NAME L"KeyName1"#define G_INI_KEY_VALUE_DEFAULT L""#define G_INI_KEY_VALUE_LEN_MAX 4096int _tmain(int argc, _TCHAR* argv[]){BOOL bRc = TRUE;DWORD dwRc = 0;CONST DWORD dwLenKeyValue = G_INI_KEY_VALUE_LEN_MAX;TCHAR cKeyValue[dwLenKeyValue];CUnicodeIni ini(G_INI_PATHNAME, TRUE);bRc = ini.WriteProfileString(G_INI_SECTION_NAME, G_INI_KEY_NAME, L"KeyValue1");if(!bRc){_tprintf(L"ERROR ini.WriteProfileString %s = %d\n", L"::GetLastError()", ::GetLastError());goto _tmain_END;}dwRc = ini.GetProfileString(G_INI_SECTION_NAME, G_INI_KEY_NAME, G_INI_KEY_VALUE_DEFAULT, cKeyValue, dwLenKeyValue);if(dwRc >= dwLenKeyValue){_tprintf(L"ERROR ini.GetProfileString, KeyValue need %d bytes\n", dwRc);goto _tmain_END;}_tmain_END:getchar();return 0;}

bugfix

  srcUnicodeIni-2013-1010-1923.rar
  在使用过程中发现,有可能头一次新建文件时,将文件设置成只读属性, 导致后续内容写不进去.
  还有可能一个文件第一次写不进入,必须要写第二次才能写进去.
  因为进行修改的版本不一样吧,将发现的2个问题修正了. 

  prjUnicodeIni_V2012_0403_2211.rar
  可用版本, 初版

  





原创粉丝点击