CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

50分求“文本文件格式ANSI->UNICODE”

楼主lhj0532(klinsmann)2005-08-01 16:31:43 在 VB / 基础类 提问

代码如下:                  
                      ansiFileNo   =   FreeFile()  
                      Dim   inputText   As   String  
                      Dim   inputTextUnicode   As   String  
                      Open   g_UserFile   For   Input   As   #ansiFileNo  
       
                      unicodeFileNo   =   FreeFile()  
                      Dim   outputByte()   As   Byte  
                      Open   "temp.txt"   For   Output   As   #unicodeFileNo  
                       
                      Do   While   Not   EOF(ansiFileNo)  
                              Line   Input   #ansiFileNo,   inputText  
                              If   Len(Trim(inputText))   =   0   Then  
                                      Exit   Do  
                              End   If  
                              ReDim   outputByte(LenB(inputText)   -   1)  
                              inputTextUnicode   =   StrConv(StrConv(inputText,   vbFromUnicode),   vbUnicode)  
                              'outputByte   =   inputTextUnicode  
                              Print   #unicodeFileNo,   inputTextUnicode  
                      Loop  
   
                      Close   ansiFileNo  
                      Close   unicodeFileNo  
  明明是把ANSI转换UNICODE,为什么用记事本打开,还是显示ANSI格式文本文件?  
  如果把循环换成  
                      Put   #unicodeFileNo,   ,   StrConv("Hello",   vbUnicode)  
                      Put   #unicodeFileNo,   ,   StrConv("Hello",   vbUnicode)  
                      Put   #unicodeFileNo,   ,   StrConv("Hello",   vbUnicode)  
                      Put   #unicodeFileNo,   ,   StrConv("Hello",   vbUnicode)  
                      Put   #unicodeFileNo,   ,   StrConv("Hello",   vbUnicode)  
  用记事本打开,显示UNICODE格式文本文件。  
  提问的问题没有回答,解决后两个帖子一起给分!  
  http://community.csdn.net/Expert/TopicView.asp?id=4180903  
   
  问题点数:50、回复次数:4Top

1 楼eslbs(书林跋涉)回复于 2005-08-02 00:01:01 得分 0

写完整一点就是下面这样    
  ansiFileNo   =   FreeFile()  
  Dim   inputText   As   String  
  Dim   inputTextUnicode   As   String  
  Open   g_UserFile   For   Input   As   #ansiFileNo  
  unicodeFileNo   =   FreeFile()  
  Dim   outputByte()   As   Byte  
  Open   App.Path   &   "\temp.txt"   For   Binary   As   #unicodeFileNo  
  inputText   =   InputB$(LOF(1),   #ansiFileNo)  
  inputTextUnicode   =   StrConv(inputText,   vbUnicode)  
  outputByte   =   inputTextUnicode  
  Put   #unicodeFileNo,   ,   outputByte()  
  Close   ansiFileNo  
  Close   unicodeFileNoTop

2 楼eslbs(书林跋涉)回复于 2005-08-02 00:06:05 得分 50

Open   g_UserFile   For   Input   As   #1  
  Open   App.Path   &   "\temp.txt"   For   Binary   As   #2  
  Put   #2,   ,StrConv(InputB$(LOF(1),   #1),   vbUnicode)  
  Close   #1  
  Close   #2  
   
  不知道这个代码行不行,没有测试……Top

3 楼eslbs(书林跋涉)回复于 2005-08-02 00:20:06 得分 0

改好了    
  Dim   outputbyte()   As   Byte  
  Open   g_UserFile   For   Input   As   #1  
  Open   App.Path   &   "\temp.txt"   For   Binary   As   #2  
  outputbyte   =   StrConv(InputB$(LOF(1),   #1),   vbUnicode)  
  Put   #2,   ,   outputbyte  
  Close   #1  
  Close   #2  
  Top

4 楼lhj0532(klinsmann)回复于 2005-08-02 09:05:19 得分 0

楼上的兄弟:  
  好像不行,用记事本打开还是ANSI的阿,编码方式肯定是变了,不过变成乱码了。Top

相关问题

  • 文件格式ANSI -> UNICODE
  • 文本文件格式问题
  • 固定文本文件格式处理问题
  • 如何将一个文本文件格式化输出?
  • linux和windows文本文件格式转换问题
  • 急!为什么我的所有ASPX文件都成了文本文件格式?
  • ===>怎么把WORD、EXCEL文档以文本文件格式读出来..在线等..
  • 如何导出数据为文本文件?格式见内!谢谢!
  • 文件格式??
  • 文件格式?

关键词

  • 记事本
  • unicode
  • unicodefileno
  • outputbyte
  • ansifileno
  • vbunicode
  • inputtextunicode
  • strconv
  • inputtext
  • freefile

得分解答快速导航

  • 帖主:lhj0532
  • eslbs

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo