我一直在开发一个解析器,它将 JavaScript 作为输入并创建该 JavaScript 的压缩版本作为输出。
我最初发现解析器在尝试读取输入的 JavaScript 时失败了。我相信这与 Visual Studio 2008 默认将其文件保存为 UTF-8 这一事实有关。这样做时,VS 会在 UTF-8 文件的开头包含几个隐藏字符。
作为解决方法,我使用 Visual Studio 将文件保存为代码页 1252。这样做之后,我的解析器就能够读取输入的 JavaScript。
请注意,我需要使用包含重音符号的特殊欧洲字符。
所以,这是我的问题:
- 我应该使用代码页 1252 还是 UTF-8?
- 为什么 Visual Studio 默认将文件保存为 UTF-8?
- 如果我选择将文件保存为 1252 会导致问题吗?
- 在我看来,Eclipse 默认将文件保存为代码页 1252。听起来对吗?
最佳答案
UTF-8 是一个更好的选择,因为它确实支持所有 已知字符,而对于 1252,您最终可能会得到您需要从中遗漏的字符(即使是欧洲语言)。
显然,VS2008 使用 byte order mark 保存 UTF-8 - 应该可以关闭它,或者让解析器识别它,或者在两者之间的某个地方去除 BOM。
关于javascript - UTF-8 与 Visual Studio 2008 中包含欧洲字符的 HTML 和 JavaScript 的代码页 1252,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/992528/