C#中类似C++fopen、fclose、fwrite的函数
用C#改写一段C++代码,C++中有fopen、fclose、fwrite,C#相应的用什么方法?谢谢...
用C#改写一段C++代码,C++中有fopen、fclose、fwrite,C#相应的用什么方法?谢谢
展开
3个回答
展开全部
fopen, fclose, fwrite是C/C++中,用于文件读取写入的函数。
在C#语言中,有很多方法可以进行文件读写。
下面是通过StreamReader,FileStream,StreamWriter进行文件读写的范例。
// 头文件引用
using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
// 文件读取
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();
// 文件写入
FileStream fs = new FileStream(文件路径, FileMode.Create);
StreamWriter sw = new StreamWriter(fs);
//开始写入
sw.Write(String);
//清空缓冲区
sw.Flush();
//关闭流
sw.Close();
fs.Close();
展开全部
看到您提的问题,使用c#代替C++的操作类和大概写法如下:
System.IO.FileStream 可以进行文件的读写、打开关闭。例如打开:
byte[] bytes = new byte[1024];//定义一个一次读取内容的大小
//创建流,并且对文件这行打开、读取、以及可以共享读写操作,共享读写表示在你使用的同时,其他线程也可以操作它
FileStream fs = new FileStream(文件路径, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
//字符编码格式
UTF8Encoding utf8 = new UTF8Encoding(true);
fs.Read(bytes, 0, bytes.Length);
var fileContent = new StringBuilder();
while (fs.Read(bytes, 0, bytes.Length) > 0)
{
//获取内容
fileContent.AppendLine(utf8.GetString(bytes));
}
return fileContent;//这个是读出文件以后的内容
//写入操作和上面类似,另外提供一个连接,是MSDN上提到的,可以参考下,希望能够帮到您。
http://msdn.microsoft.com/zh-cn/library/system.io.filestream_methods(v=vs.110).aspx
System.IO.FileStream 可以进行文件的读写、打开关闭。例如打开:
byte[] bytes = new byte[1024];//定义一个一次读取内容的大小
//创建流,并且对文件这行打开、读取、以及可以共享读写操作,共享读写表示在你使用的同时,其他线程也可以操作它
FileStream fs = new FileStream(文件路径, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
//字符编码格式
UTF8Encoding utf8 = new UTF8Encoding(true);
fs.Read(bytes, 0, bytes.Length);
var fileContent = new StringBuilder();
while (fs.Read(bytes, 0, bytes.Length) > 0)
{
//获取内容
fileContent.AppendLine(utf8.GetString(bytes));
}
return fileContent;//这个是读出文件以后的内容
//写入操作和上面类似,另外提供一个连接,是MSDN上提到的,可以参考下,希望能够帮到您。
http://msdn.microsoft.com/zh-cn/library/system.io.filestream_methods(v=vs.110).aspx
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
System.IO.FileStream~具体看你操作什么文件。C#分的很细一般的当流操作就OK在复杂xml也有专门的操作类
追问
你好,类似于下面这样的,使用什么方法?谢了
#define DTA_FILE_NAME "C:\\CONSOLE.DTA" // this is where the data is saved
FILE *fp = NULL;
fp = fopen(DTA_FILE_NAME, "wb");
追答
二进制文件还是文本?就用FileStream是可以打开的但是前提是你给知道编码方式。要从流里读出来的都是没意义的东西
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |