public void ReadWord(byte[] bitarray)
{
FileStream fs;
FileInfo fi = new FileInfo(HttpContext.Current.Server.MapPath("doc/TestWord.doc")); System.Diagnostics.Process[] processList = System.Diagnostics.Process.GetProcesses();
foreach (System.Diagnostics.Process process in processList)
{
if (process.ProcessName == "WINWORD.EXE")
{
process.Kill();
}
}
fs = fi.OpenWrite();
fs.Write(bitarray, 0, bitarray.Length);
fs.Close();
fs.Dispose();
}
现象描述:能够创建word 但是word只有1KB 很显然这个Word是错误的,我又用TXT文件试了一下,发现也是1KB,但是可以打开,但是只有前面一些文字有显示(是不是意味着还是写了一点进去了),这是为什么呢?好几天了,简简单单的几行代码,问题出在哪呀,经过测试,确定与VSS无关,与权限无关(我在这个文件夹里面用File.Delete(path)方法都能删掉文件),与数据库,与byte[]流无关,而且直到fs.Write(bitarray, 0, bitarray.Length);这一步,里面的bitarray和bitarray.Length都是正确的, 按道理到 fs.Close();这一步, 这个Word就应该出来了,可是只有1KB~~~~这是为什么呢?请大家帮帮还有那些问题没考虑到得呀,谢谢!
{
FileStream fs;
FileInfo fi = new FileInfo(HttpContext.Current.Server.MapPath("doc/TestWord.doc")); System.Diagnostics.Process[] processList = System.Diagnostics.Process.GetProcesses();
foreach (System.Diagnostics.Process process in processList)
{
if (process.ProcessName == "WINWORD.EXE")
{
process.Kill();
}
}
fs = fi.OpenWrite();
fs.Write(bitarray, 0, bitarray.Length);
fs.Close();
fs.Dispose();
}
现象描述:能够创建word 但是word只有1KB 很显然这个Word是错误的,我又用TXT文件试了一下,发现也是1KB,但是可以打开,但是只有前面一些文字有显示(是不是意味着还是写了一点进去了),这是为什么呢?好几天了,简简单单的几行代码,问题出在哪呀,经过测试,确定与VSS无关,与权限无关(我在这个文件夹里面用File.Delete(path)方法都能删掉文件),与数据库,与byte[]流无关,而且直到fs.Write(bitarray, 0, bitarray.Length);这一步,里面的bitarray和bitarray.Length都是正确的, 按道理到 fs.Close();这一步, 这个Word就应该出来了,可是只有1KB~~~~这是为什么呢?请大家帮帮还有那些问题没考虑到得呀,谢谢!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货