zoukankan      html  css  js  c++  java
  • 在Unicode环境下读出和写入文件

    近日,做一个文件的读取和写入工作,在网上找到的一些方法,但是却不能完全成功,失败的地方在于:不能写入汉字。我想这肯定和UNICODE环境有关,于是查了一下资料,形成了以下文字。

    第一,读取文件(这个没有什么问题)

    const TCHAR szFilter[] = _T("CVS文件(*.csv)|*.csv");
    CFileDialog OpenFileDialog(TRUE,_T(
    "csv"),NULL,OFN_FILEMUSTEXIST|OFN_HIDEREADONLY,szFilter,NULL);
    if (OpenFileDialog.DoModal() == IDOK)
    {
    CString FileName
    = OpenFileDialog.GetPathName();
    CStdioFile File;
    File.Open(FileName,CFile::modeRead);
    CString strLine;
    while (File.ReadString(strLine))
    {
    MessageBox(strLine);
    }
    }



    第二,定文件

    const TCHAR szFilter[] = _T("CVS文件(*.csv)|*.csv");
    CFileDialog OpenFileDialog(FALSE,_T(
    "csv"),NULL,OFN_FILEMUSTEXIST|OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,szFilter,NULL);
    if (OpenFileDialog.DoModal() == IDOK)
    {
    CString FileName
    = OpenFileDialog.GetPathName();
    _tsetlocale(LC_CTYPE,_T(
    "chs"));
    CStdioFile File(FileName,CFile::modeCreate
    |CFile::modeWrite);
    File.SetLength(
    0);
    CString strLine
    = _T("你,我\n");
    File.WriteString(strLine);
    strLine
    = _T("你,我\n");
    File.WriteString(strLine);
    File.Close();
    }


    当然,在此之前还需要引入一个头文件#include <locale>


  • 相关阅读:
    Docker部署安装FasterRunner详细教程
    Centos7.6下使用docker方法安装stf
    FasterRunner在Centos7.6服务器部署
    HttpRunnerManager接口自动化测试框架在win环境下搭建教程
    Katalon
    jsoup的一个爬虫例子
    idea怎么调成黑色页面
    Idea创建一个web项目
    渗透测试基本流程
    家装流程
  • 原文地址:https://www.cnblogs.com/luoshupeng/p/2180712.html
Copyright © 2011-2022 走看看