C#的文件操作及中文乱码问题的解决
2007-10-16 11:26
1971 查看
对C#读写文件网上的帖子泛滥成灾,百度一下就能轻松找到用C#对文件读写、打开、追加、打开、删除、移动、创建目录等操作。和Java一样,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#写入/读出文本文件
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"));
相关文章推荐
- Java中按照行读取和写入文件 日志常用操作 解决中文乱码问题
- 解决C#操作Mysql时中文乱码问题(真的解决了)
- c# web 下载文件(解决中文文件名乱码问题)
- Struts2 .apk 文件下载及解决中文文件名乱码问题(转)
- 解决PHP在IE浏览旗下载文件,中文文件名乱码问题
- 解决asp.net中使用FckEditor上传文件,中文名称乱码的问题
- 解决linux环境tomcat下载文件404的问题(路径中文乱码)
- 解决上传文件时服务端中文文件名乱码问题
- 解决Python2操作中文名文件乱码的问题
- java实现中文文件下载,解决乱码问题,亲测无问题~~
- c# 调用log4net,解决中文字符显示乱码的问题
- Java 读取ANSI文件中文乱码问题解决方式[转]
- 解决asp.net中使用FckEditor上传文件,中文名称乱码的问题
- jsp+servlet 文件上传 解决中文乱码问题
- Springboot 之 解决IDEA读取properties配置文件的中文乱码问题
- 解决PHP在IE浏览器下载文件,中文文件名乱码问题
- c# 读取txt文件中文乱码解决方法
- Ant 执行 YUICompressor 任务压缩 JavaScript 和 CSS 文件,解决中文乱码问题,增加源文件字符编码集设定
- PHP自带函数fgetcsv读取csv文件中文乱码问题解决办法
- VC6中cpp文件源码中出现中文乱码问题的解决办法