关于文件读写的问题,百思不得其解 最好在实例化fsr后来一句 fsr.Seek(0, SeekOrigin.Begin);如果文件指针位置不对, 会乱写一通另: write语句之后, 最好来一个 fsr.Flush();写设备 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 文本读写参照如下代码using System.IO;//try{string strLine="";string id="";//卡号bool ok=false;//用户是否按了OKbool complete=true;//刷卡是否完毕string[]strArray;char[]charArray=new char[]{','}; FileStream aFile=new FileStream("tempid.txt",FileMode.Open);StreamReader sr=new StreamReader(aFile);strLine=sr.ReadLine();if(strLine!=null){strArray=strLine.Split(charArray);complete=bool.Parse(strArray[2].Trim());if(complete)//刷卡完毕{ok=bool.Parse(strArray[1].Trim());if(ok)//用户按下OK{id=strArray[0].Trim();if(id!="000")textBoxIDNumber.Text=id;}timerCheck.Enabled=false; }} sr.Close();}catch{//没有文件 ;} to panyee(快乐王子): 我按照你的说法试过了,好象还是一样。to snof(雪狼):估计你对文件的读写还不是很熟悉 interestingFileStream FileStr=new FileStream("F:a.doc",System.IO.FileMode.Open); byte[] by1=new byte[System.Convert.ToInt32(FileStr.Length)]; FileStr.Read(by1,0,by1.Length); FileStr.Close();string s = System.Text.Encoding.Default.GetString(by1,0,by1.Length);byte[] by2 = System.Text.Encoding.Default.GetBytes(s);Console.WriteLine("same length?{0}",by1.Length == by2.Length);for (int i=0; i < by1.Length; i++) if (by1[i] != by2[i]) Console.WriteLine("different:{0},{1}", by1[i], by2[i]); FileStream fsr=new FileStream("G:b.doc",System.IO.FileMode.Create);fsr.Write(by2,0,by2.Length);fsr.Close(); by the way, trySystem.Text.Encoding.GetEncoding("GB2312") to saucer(思归, MS .NET MVP):还是不行。在调试时,就知道by1.Length和by2.Length不一样,但不知道为什么。 vs2008调试的问题 怎样关闭除当前子窗体外的其它子窗体 异步的问题 e.Graphics.DrawArc后面的内容怎么写才对 jmail在收邮件时,mailMessage.Body为空,就接收不了了?请大侠相助 谁能解释一下这个字符表达式的含义?100分 如何把datagridview修改的数据保存到数据库中 C#空格用什么表示? 我这个怎么回事儿啊????? 请教一个关于dev 做report 报表的问题 有用过的帮帮忙 【TreeView问题】:是高手的就过来,这个问题现在【微软】的技术专家也搞不定,悲哀 enum的写法
using System.IO;
//
try
{string strLine="";
string id="";//卡号
bool ok=false;//用户是否按了OK
bool complete=true;//刷卡是否完毕
string[]strArray;
char[]charArray=new char[]{','};
FileStream aFile=new FileStream("tempid.txt",FileMode.Open);
StreamReader sr=new StreamReader(aFile);
strLine=sr.ReadLine();
if(strLine!=null)
{
strArray=strLine.Split(charArray);
complete=bool.Parse(strArray[2].Trim());
if(complete)//刷卡完毕
{ok=bool.Parse(strArray[1].Trim());
if(ok)//用户按下OK
{id=strArray[0].Trim();
if(id!="000")
textBoxIDNumber.Text=id;
}timerCheck.Enabled=false;
}
}
sr.Close();
}
catch
{
//没有文件
;}
我按照你的说法试过了,好象还是一样。to snof(雪狼):
估计你对文件的读写还不是很熟悉
byte[] by1=new byte[System.Convert.ToInt32(FileStr.Length)];
FileStr.Read(by1,0,by1.Length);
FileStr.Close();string s = System.Text.Encoding.Default.GetString(by1,0,by1.Length);
byte[] by2 = System.Text.Encoding.Default.GetBytes(s);Console.WriteLine("same length?{0}",by1.Length == by2.Length);
for (int i=0; i < by1.Length; i++)
if (by1[i] != by2[i])
Console.WriteLine("different:{0},{1}", by1[i], by2[i]);
FileStream fsr=new FileStream("G:b.doc",System.IO.FileMode.Create);
fsr.Write(by2,0,by2.Length);
fsr.Close();
还是不行。
在调试时,就知道by1.Length和by2.Length不一样,但不知道为什么。