0

我有一个将十六进制字符串转换为二进制的代码!在 WinForm 应用程序上,它就像一个魅力!但是如果我尝试在 aspx 中实现它,就会发生一些奇怪的事情。应该是 hexstring 文件一半大小的文件只是不断地增长和增长,没有尽头。另外,如果我停止调试,它会在 VS2010 中被劫持,如果不完全关闭 VS2010,我就无法删除它。

转换的方法是这样的:

 public static byte[] StringToByteArray(String hex)
    {
        int NumberChars = hex.Length;
        byte[] bytes = new byte[NumberChars / 2];
        for (int i = 0; i < NumberChars; i += 2)
            bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
        return bytes;
    }

和代码:

string FileName1 = (@"Some HEX text File");                        
using (StreamReader sr1 = File.OpenText(FileName1))
using (BinaryWriter bw = new BinaryWriter(File.Open("New Binary File", FileMode.Append)))
    {         
      string hexString = (sr1.ReadLine());
      while (hexString != null)
            {
               bw.Write(StringToByteArray(hexString));         
            }
                bw.Close();
    }

因此,要恢复,这在 winFormApp 中有效,而在 WebApp 中无效。为什么?我真的需要它在 WebApp 中工作。谢谢你。

4

1 回答 1

0

你解决了吗?也许它被多次调用(例如多个用户访问该网页?)我会在您的外部代码上放置一个断点,例如“while(hexString!= null)”或该方法的开始,只是为了看看是否是案子。

于 2013-11-11T23:25:35.630 回答