Tag: 字节顺序标记

XML – 根级别的数据无效

我有一个以UTF-8编码的XSD文件,任何运行它的文本编辑器都不会在文件的开始处显示任何字符,但是当我在Visual Studio的debugging器中将其拉出时,我清楚地看到一个空的在文件前面的框。 我也得到错误: 在根目录的数据是无效的。 1号线,位置1。 有谁知道这是什么吗? 更新:编辑的文章以限定文件的types。 这是由Microsoft的XSD创build者创build的XSD文件。

使用Emacs删除字节顺序标记(BOM)

我有一个包含UTF-8编码文本的文件,其中包含一个字节顺序标记。 这个BOM正在阻碍事情,我想删除它。 使用其他工具,比如perl或者awk,或者奇怪的编辑模式,比如hexl-mode,每次我想摆脱BOM都是有些恼人的。 有没有办法告诉Emacs删除现有的物料清单,而不是把它写在磁盘上再次保存?

在Python中不使用BOM将UTF-8与BOM转换为UTF-8

这里有两个问题。 我有一套通常是带有BOM的UTF-8的文件。 我想将它们(理想情况下)转换为UTF-8,不含BOM。 看起来像codecs.StreamRecoder(stream, encode, decode, Reader, Writer, errors)将处理此。 但是我没有看到使用过程中的任何好例子。 这是处理这个问题的最好方法吗? source files: Tue Jan 17$ file brh-m-157.json brh-m-157.json: UTF-8 Unicode (with BOM) text 另外,如果我们能够处理不同的input编码而不明确地知道(见ASCII和UTF-16),那将是理想的。 看来这应该都是可行的。 是否有解决scheme,可以采取任何已知的Python编码和输出为UTF-8没有BOM? 编辑1从下面sol'n(谢谢!) fp = open('brh-m-157.json','rw') s = fp.read() u = s.decode('utf-8-sig') s = u.encode('utf-8') print fp.encoding fp.write(s) 这给了我以下错误: IOError: [Errno 9] Bad file descriptor 新闻快报 我被告知在评论中,错误是我用模式'rw'而不是'r +'/'r + b'打开文件,所以我最终应该重新编辑我的问题,并删除解决的部分。

如何在C#中使用带有BOM的UTF8编码的GetBytes()?

我在C#中的asp.net mvc 2应用程序中遇到了UTF8编码的问题。 我想让用户从一个string下载一个简单的文本文件。 我正在尝试使用以下行获取字节数组: var x = Encoding.UTF8.GetBytes(csvString); 但是当我返回下载使用: return File(x, …, …); 我得到一个没有BOM的文件,所以我没有正确显示克罗地亚字符。 这是因为我的字节数组在编码后不包含BOM。 我手动插入这些字节,然后显示正确,但这不是最好的办法。 我也尝试创buildUTF8Encoding类实例,并将布尔值(true)传递给其构造函数以包含BOM,但它也不起作用。 任何人都有解决scheme? 谢谢!

用Python编写UTF-8文件

我真的与codecs.open function混淆。 当我做: file = codecs.open("temp", "w", "utf-8") file.write(codecs.BOM_UTF8) file.close() 它给了我错误 UnicodeDecodeError:'ascii'编解码器无法解码0位的字节0xef:序号不在范围内(128) 如果我做: file = open("temp", "w") file.write(codecs.BOM_UTF8) file.close() 它工作正常。 问题是为什么第一种方法失败? 而且我该如何插入宝盒? 如果第二种方法是正确的做法,使用codecs.open(filename, "w", "utf-8")什么意思?

没有BOM的UTF-8

我有我需要他们保存在UTF-8(没有BOM)的JavaScript文件,每次我将它们转换为正确的格式在记事本+ + ,他们被还原回UTF-8的BOM,当我在Visual Studio中打开它们。 我怎么能阻止VS2010这样做? 另一个问题是,在Visual Studio中没有签名的UTF-8与没有BOM的UTF-8是一样的吗?

如何从我的XML文件中删除BOM字符

我正在使用xsl来控制我的xml文件的输出,但是正在添加BOM字符。

写没有字节顺序标记(BOM)的文本文件?

我想创build一个文本文件使用VB.Net与UTF8编码,没有BOM。 任何人都可以帮助我,怎么做? 我可以使用UTF8编码编写文件,但是,如何从中删除字节顺序标记? 编辑1:我已经尝试过这样的代码; Dim utf8 As New UTF8Encoding() Dim utf8EmitBOM As New UTF8Encoding(True) Dim strW As New StreamWriter("c:\temp\bom\1.html", True, utf8EmitBOM) strW.Write(utf8EmitBOM.GetPreamble()) strW.WriteLine("hi there") strW.Close() Dim strw2 As New StreamWriter("c:\temp\bom\2.html", True, utf8) strw2.Write(utf8.GetPreamble()) strw2.WriteLine("hi there") strw2.Close() 1.html只使用UTF8编码创build,2.html使用ANSI编码格式创build。 简化方法 – http://whatilearnttuday.blogspot.com/2011/10/write-text-files-without-byte-order.html

如何检测文本文件的字符编码?

我尝试检测在我的文件中使用哪种字符编码。 我试着用这个代码来获得标准的编码 public static Encoding GetFileEncoding(string srcFile) { // *** Use Default of Encoding.Default (Ansi CodePage) Encoding enc = Encoding.Default; // *** Detect byte order mark if any – otherwise assume default byte[] buffer = new byte[5]; FileStream file = new FileStream(srcFile, FileMode.Open); file.Read(buffer, 0, 5); file.Close(); if (buffer[0] == 0xef && buffer[1] == 0xbb […]

使用PowerShell以不含BOM的UTF-8编写文件

使用UTF-8时, Out-File似乎强制BOM: $MyFile = Get-Content $MyPath $MyFile | Out-File -Encoding "UTF8" $MyPath 如何使用PowerShell以UTF-8编写不含BOM的文件?