引入外部js文件到项目中乱码

        在开发过程中,需要引用一些开源js文件到项目中,之后出现乱码,各方面确认使用编码字符集都是UTF-8,证明不是字符集的问题。

        最终解决方案:将引入的js文件的字符集编码由UTF-8改为带有BOM的UTF-8格式即可解决乱码问题。

        BOM:byte order mark,定义字节顺序,因为网络传输中分为两种,大头和小头。UTF-8不需要表明字节顺序,但可以用BOM来表示编码方式,windows就是采用BOM来标记文本文件的编码方式的。BOM是为UTF-16和UTF-32准备的,用于标记字节顺序。微软在UTF-8中使用BOM是因为这样可以把UTF-8和ASCII等编码区分开来,但这样的文件在windows之外的操作系统里会带来问题。不含BOM的UTF-8才是标准格式。UTF-8和带BOM的UTF-8的区别就是有没有BOM。即文件开头有没有U+FEFF。UTF-8的网页代码不应使用BOM,否则常常会出错。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果在 SpringBoot 项目读取配置文件时出现码,可能是因为编码格式不正确或者文件本身存在编码问题。你可以尝试以下几种方法来解决: 1. 在 `application.properties` 或 `application.yml` 添加以下配置: ``` spring.http.encoding.force=true spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true ``` 这些配置将确保 Spring Boot 使用正确的编码格式来读取配置文件。 2. 确认配置文件的编码格式是否正确。可以使用 UTF-8 编码格式保存配置文件,并确保在读取文件时指定正确的编码格式。 ``` Properties properties = new Properties(); InputStream inputStream = getClass().getClassLoader().getResourceAsStream("application.properties"); try { InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "UTF-8"); properties.load(inputStreamReader); } catch (IOException e) { e.printStackTrace(); } ``` 3. 如果以上方法都无法解决问题,可以尝试使用 `native2ascii` 工具将配置文件转换为 ASCII 码,并在读取文件时指定编码格式为 `ISO-8859-1`。 ``` Properties properties = new Properties(); InputStream inputStream = getClass().getClassLoader().getResourceAsStream("application.properties"); try { InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "ISO-8859-1"); properties.load(new StringReader(Native2AsciiUtils.ascii2Native(IOUtils.toString(inputStreamReader)))); } catch (IOException e) { e.printStackTrace(); } ``` 希望这些方法可以帮助你解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值