您的位置:首页 > 理论基础 > 计算机网络

HttpWebRequest以UTF-8编码写入内容时发生“Bytes to be written to the stream exceed the Content-Length bytes size specified.”错误

2010-12-13 01:10 731 查看
出错代码如下:

request.ContentLength = Encoding.UTF8.GetByteCount(content);
var writer = new StreamWriter(request.GetRequestStream(), Encoding.UTF8);
writer.Write(content);
writer.Flush();
writer.Close();


原因是直接使用Encoding.UTF8,在StreamWriter中使用这个Encoding会在流的开头写入byte order mark. 解决方法是改用new UTF8Encoding(false)来构造不写入byte order mark的Encoding.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐