Tag: utf 8

带有POST编码问题的C#web请求

在MSDN网站上有一些C#代码的示例,它显示了如何使用POST数据发出Web请求。 以下是该代码的摘录: WebRequest request = WebRequest.Create (“http://www.contoso.com/PostAccepter.aspx “); request.Method = “POST”; string postData = “This is a test that posts this string to a Web server.”; byte[] byteArray = Encoding.UTF8.GetBytes (postData); // (*) request.ContentType = “application/x-www-form-urlencoded”; request.ContentLength = byteArray.Length; Stream dataStream = request.GetRequestStream (); dataStream.Write (byteArray, 0, byteArray.Length); dataStream.Close (); WebResponse response = request.GetResponse (); […]

process.standardInput编码问题

我对process.standartInput编码的编码有问题。 我在我的Windows窗体应用程序中使用了一些进程,但输入应该是UTF-8。 Process.StandardInput.Encoding是只读的,因此我无法将其设置为UTF-8,并且它获得了Windows默认编码,这会恶化UTF-8中的原生字符。 程序中使用了2个进程,一个将输出写入文件和其他读取。 因为我可以将输出编码设置为UTF-8,这部分工作正常,但回读是我遇到问题的部分。 我将包括我使用该过程的部分。 ProcessStartInfo info = new ProcessStartInfo(“mysql”); info.RedirectStandardInput = true; info.RedirectStandardOutput = false; info.Arguments = mysqldumpstring; info.UseShellExecute = false; info.CreateNoWindow = true; Process p1 = new Process(); p1.StartInfo = info; p1.Start(); string res = file.ReadToEnd(); file.Close(); MessageBox.Show(p1.StandardInput.Encoding.EncodingName); //= where encoding should be Encoding.UTF8; p1.StandardInput.WriteLine(res); p1.Close();

C#Mysql UTF8编码

我有一个带有utf8_general_ci编码的mysql数据库, 我使用utf-8页面和文件编码连接到相同的数据库,没有问题但是当连接mysql与C#我有这样的字母غزة 我编辑连接字符串是这样的 server=localhost;password=root;User Id=root;Persist Security Info=True;database=mydatabase;Character Set=utf8 但同样的问题。

C#:循环编码

我正在阅读各种格式和语言的文件,我目前正在使用一个小编码库来尝试检测正确的编码( http://www.codeproject.com/KB/recipes/DetectEncoding.aspx )。 这很不错,但偶尔也会错过。 (多语言文件) 我的大多数潜在用户对编码的理解很少(我希望最好的是“它与字符有关”)并且不太可能在列表中选择正确的编码,所以我想让他们循环通过不同的编码,直到通过点击按钮找到正确的编码。 显示问题? 点击这里尝试不同的编码! (那就是这个概念) 实现类似的东西最好的方法是什么? 编辑:看起来我没有表达得足够清楚。 通过“循环编码”,我不是指“如何循环编码?” 我的意思是“如何让用户按顺序尝试不同的编码而不重新加载文件?” 这个想法更像是这样的:假设文件加载了错误的编码。 显示一些奇怪的字符。 用户将单击“下一编码”或“先前编码”按钮,并且将以不同的编码转换该字符串。 用户只需要一直点击,直到找到正确的编码。 (无论编码看起来对用户有什么好处都可以。) 只要用户可以点击“下一步”,他就有合理的机会解决他的问题。 到目前为止我发现的包括使用当前编码将字符串转换为字节,然后将字节转换为下一个编码,将这些字节转换为字符,然后将字符串转换为字符串…可行,但我想知道是否存在这是一种更简单的方法。 例如,如果有一个方法可以读取字符串并使用不同的编码返回它,例如“render(string,encoding)”。 非常感谢你的答案!

如何在.net中生成UTF-8字符集中的所有字符

我被赋予了生成UTF-8字符集中所有字符的任务,以测试系统如何处理它们。 我对字符编码没有多少经验。 接近我要尝试的是增加一个计数器,然后尝试将该十进制数转换为它的等效UTF-8字符,但到目前为止,我无法在C#3.5中找到一种有效的方法。 任何建议将不胜感激。

XmlReader在UTF-8 BOM上中断

我的应用程序中有以下XML解析代码: public static XElement Parse(string xml, string xsdFilename) { var readerSettings = new XmlReaderSettings { ValidationType = ValidationType.Schema, Schemas = new XmlSchemaSet() }; readerSettings.Schemas.Add(null, xsdFilename); readerSettings.ValidationFlags |= XmlSchemaValidationFlags.ProcessInlineSchema; readerSettings.ValidationFlags |= XmlSchemaValidationFlags.ProcessSchemaLocation; readerSettings.ValidationFlags |= XmlSchemaValidationFlags.ReportValidationWarnings; readerSettings.ValidationEventHandler += (o, e) => { throw new Exception(“The provided XML does not validate against the request’s schema.”); }; var readerContext […]

如何在C#中将“=?utf-8?B?…?=”解码为字符串

我使用Visual Studio 2010,C#使用IMAP读取Gmail收件箱,它可以作为魅力,但我认为Unicode不完全支持,因为我无法轻松获得波斯语(波斯语)字符串。 例如,我有我的字符串: سلام ,但IMAP给了我: “=?utf-8?B?2LPZhNin2YU=?=” 。 如何将其转换为原始字符串? 将utf-8转换为字符串的任何提示?

在C#中将字符串(UTF-16)转换为UTF-8

我需要在C#中将字符串转换为UTF-8。 我已经尝试了很多方法,但没有一个像我想的那样有效。 我将我的字符串转换为字节数组,然后尝试将其写入XML文件(编码为UTF-8 ….)但是我得到了相同的字符串(根本没有编码)要么我得到了一个列表无用的字节….有人面临同样的问题吗? 编辑:这是我使用的一些代码: str= “testé”; byte[] utf8Bytes = Encoding.UTF8.GetBytes(str); return Encoding.UTF8.GetString(utf8Bytes); 结果是“testé”或者我期待像“testé”这样的东西……

MySQL C#文本编码问题

我有一个旧的MySQL数据库,编码设置为UTF-8。 我正在使用Ado.Net Entity框架连接到它。 当我想要ë同样的字符时,我从中检索的字符串有奇怪的字符。 例如:“ë”是“Ô。 我想我可以通过从UTF8转换为UTF16来实现这一目标。 return Encoding.Unicode.GetString( Encoding.Convert( Encoding.UTF8, Encoding.Unicode, Encoding.UTF8.GetBytes(utf8))); } 然而,这并没有改变一件事。 我怎样才能以正确的forms从这个数据库中获取数据?

System.Net.Mail和=?utf-8?B?XXXXX …标题

我正在尝试使用下面的代码通过System.Net.Mail发送消息,我有时会得到像’=?utf-8?B?W3AxM25dIEZpbGV…’ (修剪过)的主题。 这是被称为的代码: MailMessage message = new MailMessage() { From = new MailAddress(“someone@somewhere.com”, “Service”), BodyEncoding = Encoding.UTF8, Body = body, IsBodyHtml = true, ReplyTo = new MailAddress(“do.not.reply@somewhere.com”), SubjectEncoding = Encoding.UTF8 }; foreach (string emailAddress in addresses) { message.To.Add(new MailAddress(emailAddress.Trim(), “Person”)); } message.Subject = subject; 我想强调的是,这并不是一直发生的。 我究竟做错了什么?