当前位置:编程学习 > C#/ASP.NET >>

C#文件操作

//C#写入/读出文本文件
  string fileName =@"c:I.txt";
  StreamReader sr = new StreamReader(fileName); string str=sr.ReadLine (); sr.close();
  StreamWriterrw=File.CreateText(Server.MapPath(".")+"/myText.txt");
  rw.WriteLine("写入");
  rw.WriteLine("abc");
  rw.WriteLine(".NET笔记");
  rw.Flush();
  rw.Close();
  //打开文本文件
  StreamReadersr=File.OpenText(Server.MapPath(".")+"/myText.txt");
  StringBuilderoutput=newStringBuilder();
  stringrl;
  while((rl=sr.ReadLine())!=null)
  ...{
  output.Append(rl+"");
  }
  lblFile.Text=output.ToString();
  sr.Close();
  //C#追加文件
  StreamWritersw=File.AppendText(Server.MapPath(".")+"/myText.txt");
  sw.WriteLine("追逐理想");
  sw.WriteLine("kzlll");
  sw.WriteLine(".NET笔记");
  sw.Flush();
  sw.Close();
  //C#拷贝文件
  stringOrignFile,NewFile;
  OrignFile=Server.MapPath(".")+"/myText.txt";
  NewFile=Server.MapPath(".")+"/myTextCopy.txt";
  File.Copy(OrignFile,NewFile,true);
  //C#删除文件
  stringdelFile=Server.MapPath(".")+"/myTextCopy.txt";
  File.Delete(delFile);
  //C#移动文件
  stringOrignFile,NewFile;
  OrignFile=Server.MapPath(".")+"/myText.txt";
  NewFile=Server.MapPath(".")+"/myTextCopy.txt";
  File.Move(OrignFile,NewFile);
  //C#创建目录
  //创建目录c:sixAge
  DirectoryInfod=Directory.CreateDirectory("c:/sixAge");
  //d1指向c:sixAgesixAge1
  DirectoryInfod1=d.CreateSubdirectory("sixAge1");
  //d2指向c:sixAgesixAge1sixAge1_1
  DirectoryInfod2=d1.CreateSubdirectory("sixAge1_1");
  //将当前目录设为c:sixAge
  Directory.SetCurrentDirectory("c:/sixAge");
  //创建目录c:sixAgesixAge2
  Directory.CreateDirectory("sixAge2");
  //创建目录c:sixAgesixAge2sixAge2_1
  Directory.CreateDirectory("sixAge2/sixAge2_1");

 

但是,在对txt文件读的操作中貌似没问题。因为代码能实现文件的读操作,但是所读txt文件包含中文的时候就以乱码显示。查了半天资料,看似复杂的问题其实很简单就能解决,稍微改动一下即可:
 

StreamReader sr = new StreamReader(fileName,Encoding.GetEncoding("gb2312"));

 

    
补充:软件开发 , C# ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,