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

小菜问题:如何在.ini文件中进行换行读写?

楼主bird_cai(菜鸟想升级)2003-11-02 22:57:31 在 VB / 基础类 提问

form中有两个textbox和button,  
   
  请问如何按第一个button在一个.ini文件中写第一个textbox中的字符串,然后按第二个button换行再写第二textbox个中的字符串。另外如果反过来,怎样把这两行字符分别读到两个textbox中去? 问题点数:50、回复次数:5Top

1 楼xzp1030(山角)回复于 2003-11-03 07:59:32 得分 15

存的时候:  
  open   app.path   &   "\text.txt"   for   output   as   #1  
  open   app.path   &   "\text.txt"   for   append   as   #1  
  print   #1   ,vstring  
   
  取的时候  
  open   app.path   &   "\text.txt"   for   input   as   #1  
  line   input   #1   ,vstring  
   
  textbox   中的内容赋给vstring.Top

2 楼5653325(等待开刃的刀)回复于 2003-11-03 08:57:09 得分 15

新建工程,窗体上有三个comand和2个text  
   
  Private   Sub   Command1_Click()'写入第一个字符串  
      Open   "c:\1.txt"   For   Output   As   #1  
                Print   #1,   Text1.Text  
      Close   #1  
  End   Sub  
   
  Private   Sub   Command2_Click()'写入第二个字符串  
  Open   "c:\1.txt"   For   Append   As   #1  
              Print   #1,   Text2.Text  
  Close   #1  
  End   Sub  
   
  Private   Sub   Command3_Click()'读取字符串  
  Dim   str   As   String  
  Open   "c:\1.txt"   For   Input   As   #1  
            Line   Input   #1,   str  
            Text1.Text   =   str  
            Line   Input   #1,   str  
            Text2.Text   =   str  
  Close   #1  
  End   SubTop

3 楼planetike(胜哥哥)回复于 2003-11-03 10:32:52 得分 15

先把下面的代码拷到一个模块文件中:  
   
  '两个函数   ,   先在一个模快中定义API函数    
  Declare   Function   WritePrivateProfileString   Lib   "kernel32"   Alias   "WritePrivateProfileStringA"   (ByVal   lpApplicationname   As   String,   ByVal   LpKeyName   As   Any,   ByVal   lsString   As   Any,   ByVal   lplFilename   As   String)   As   Long  
  '如果是读INT值可以用字符串转化,所以没有另外定义函数  
  'Declare   Function   GetPrivateProfileInt   Lib   "kernel32"   Alias   "GetPriviteProfileIntA"   (ByVal   lpApplicationname   As   String,   ByVal   LpKeyName   As   String,   ByVal   nDefault   As   Long,   ByVal   lpFileName   As   String)   As   Long  
  Declare   Function   GetPrivateProfileString   Lib   "kernel32"   Alias   "GetPrivateProfileStringA"   (ByVal   lpApplicationname   As   String,   ByVal   LpKeyName   As   String,   ByVal   lpDefault   As   String,   ByVal   lpReturnedString   As   String,   ByVal   nSize   As   Long,   ByVal   lpFileName   As   String)   As   Long  
   
  '定义读与写INI文件的函数  
  '****读INI文件****  
  '文件名   lpFileName   如果不存在会自己创建,如果只有文件名,默认在Windows\system目录下  
  '[lpAppName]  
  'lpKeyName=取回的设置值  
  'lpDefault   当键值不存在时的默认值  
  Public   Function   ReadINI(lpFileName   As   String,   lpAppName   As   String,   LpKeyName   As   String)   As   String  
  Dim   Temp   As   String   *   20  
  Dim   lpDefault   As   String  
  lpDefault   =   ""  
  If   GetPrivateProfileString(lpAppName,   LpKeyName,   lpDefault,   Temp,   Len(Temp),   lpFileName)   <=   0   Then  
          ReadINI   =   ""  
  Else  
          ReadINI   =   MyTrim(Temp)   'MyTrim函数见下  
  End   If  
  End   Function  
  '****写INI文件****  
  '[lpAppName]  
  'lpKeyName=lpString  
  Public   Function   WriteINI(lpFileName   As   String,   lpAppName   As   String,   LpKeyName   As   String,   lpString   As   String)   As   Boolean  
          If   WritePrivateProfileString(lpAppName,   LpKeyName,   lpString,   lpFileName)   =   0   Then  
                  WriteINI   =   False  
          Else  
                  WriteINI   =   True  
          End   If  
  End   Function  
   
  '包含三个函数,分别取Rtrim,Ltrim,Trim  
  '可以去字符串中如ASC码为0,10,13,32的字符  
  Public   Function   MyRtrim(Tmpstr   As   String)  
  Dim   i,   s   As   Integer  
  i   =   Len(Tmpstr)  
  If   i   =   0   Then  
          MyRtrim   =   ""  
          Exit   Function  
  End   If  
  s   =   Asc(Right(Tmpstr,   1))  
  While   (s   =   0   Or   s   =   13   Or   s   =   10   Or   s   =   32)   And   i   >   0  
          i   =   i   -   1  
          Tmpstr   =   Left(Tmpstr,   i)  
          If   Len(Tmpstr)   =   0   Then  
                  MyRtrim   =   ""  
                  Exit   Function  
          End   If  
          s   =   Asc(Right(Tmpstr,   1))  
  Wend  
  MyRtrim   =   Tmpstr  
  End   Function  
   
  Public   Function   MyLtrim(Tmpstr   As   String)  
  Dim   i,   s   As   Integer  
  i   =   Len(Tmpstr)  
  If   i   =   0   Then  
          MyLtrim   =   ""  
          Exit   Function  
  End   If  
  s   =   Asc(Left(Tmpstr,   1))  
  While   (s   =   0   Or   s   =   13   Or   s   =   10   Or   s   =   32)   And   i   >   0  
          i   =   i   -   1  
          Tmpstr   =   Right(Tmpstr,   i)  
          If   Len(Tmpstr)   =   0   Then  
                  MyLtrim   =   Tmpstr  
          Exit   Function  
          End   If  
          s   =   Asc(Left(Tmpstr,   1))  
  Wend  
  MyLtrim   =   Tmpstr  
  End   Function  
   
  Public   Function   MyTrim(Tmpstr   As   String)  
  Tmpstr   =   MyLtrim(Tmpstr)  
  Tmpstr   =   MyRtrim(Tmpstr)  
  MyTrim   =   Tmpstr  
  End   Fun  
   
  ***************************************  
  新建工程,放两个textbox,和四个command到form上,把下面的代码贴进去运行。  
  Private   Sub   Command1_Click()  
  WriteINI   "c:\txt.ini",   "TXT",   "text1",   Text1.Text  
  text1.text=""  
  End   Sub  
   
  Private   Sub   Command2_Click()  
  WriteINI   "c:\txt.ini",   "TXT",   "text2",   Text2.Text  
  text2.text=""  
  End   Sub  
   
  Private   Sub   Command3_Click()  
  Text1.Text   =   ReadINI("c:\txt.ini",   "TXT",   "text1")  
  End   Sub  
   
  Private   Sub   Command4_Click()  
  Text2.Text   =   ReadINI("c:\txt.ini",   "TXT",   "text2")  
  End   Sub  
  Top

4 楼weicod(唯唯)回复于 2003-11-03 10:55:01 得分 5

在程序中加入换行符chr(13)即可.Top

5 楼bird_cai(菜鸟想升级)回复于 2003-11-03 22:57:28 得分 0

谢谢大家,很快结贴.Top

相关问题

  • 写,读ini文件
  • 关于读取.ini文件?
  • 关于读写INI文件`
  • 怎样读写INI文件
  • 怎么读写INI文件?
  • 读取.INI文件出错
  • 如何读取INI文件
  • 怎样读写ini文件
  • 如何读写INI文件?
  • 怎么读取.ini文件

关键词

  • 文件
  • tmpstr
  • 字符串
  • myltrim
  • subprivate
  • tmpstrend
  • ini
  • txt
  • sub command
  • textbox

得分解答快速导航

  • 帖主:bird_cai
  • xzp1030
  • 5653325
  • planetike
  • weicod

相关链接

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

广告也精彩

反馈

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