码迷,mamicode.com
首页 > Windows程序 > 详细

C# 之 读写文件

时间:2016-06-06 10:30:05      阅读:353      评论:0      收藏:0      [点我收藏+]

标签:

1、使用 FileStream 读写文件

  添加命名空间引用:

using System;
using System.Collections.Generic;
using System.Text;
using System.IO;

  读取核心代码:

byte[] byData = new byte[100];
char[] charData = new char[1000];
try
{
    FileStream sFile = new FileStream("文件路径",FileMode.Open);
    sFile.Seek(55, SeekOrigin.Begin);
   //第一个参数是被传进来的字节数组,用以接受FileStream对象中的数据,第2个参数是字节
    // 数组中开始写入数据的位置,它通常是0,表示从数组的开端文件中向数组写数据,
    //最后一个参数规定从文件读多少字符.
    sFile.Read(byData, 0, 100); }
catch (IOException e)
{
    Console.WriteLine("An IO exception has been thrown!");
    Console.WriteLine(e.ToString());
    Console.ReadLine();
    return;
}
Decoder d = Encoding.UTF8.GetDecoder();
d.GetChars(byData, 0, byData.Length, charData, 0);
Console.WriteLine(charData);
Console.ReadLine();

  写入核心代码:

FileStream fs = new FileStream(文件路径,FileMode.Create);
//获得字节数组
byte [] data =new UTF8Encoding().GetBytes(String);
//开始写入
fs.Write(data,0,data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();

  

2、使用StreamReader和StreamWriter读写文件

  StreamReader 读取文件:

StreamReader objReader = new StreamReader(文件路径);
string sLine="";
ArrayList LineList = new ArrayList(); 
while (sLine != null)
{
    sLine = objReader.ReadLine();
    if (sLine != null&&!sLine.Equals(""))
        LineList.Add(sLine);
}
objReader.Close();
return LineList;

  StreamWriter写文件:

FileStream fs = new FileStream(文件路径,FileMode.Create);   
StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.GetEncoding("GB2312"));//通过指定字符编码方式可以实现对汉字的支持,否则在用记事本打开查看会出现乱码 sw.Flush(); if (checkfile) { sw.BaseStream.Seek(0, SeekOrigin.End);//移动到结尾 } else { sw.BaseStream.Seek(0, SeekOrigin.Begin); } string temp = "随便写点东西"; sw.WriteLine(temp); sw.Flush(); sw.Close();
fs.Close();

 

C# 之 读写文件

标签:

原文地址:http://www.cnblogs.com/xinaixia/p/5562710.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!