gpt4 book ai didi

jsp - .properties或JSP的编码有问题

转载 作者:行者123 更新时间:2023-12-04 18:20:11 25 4
gpt4 key购买 nike

我有jsp文件:

   <%@ page language="java" contentType="text/html;
charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<c:set var="language"
value="${not empty param.language ? param.language : not empty language ? language : pageContext.request.locale}"
scope="session" />
<fmt:setLocale value="${language}" />
<fmt:setBundle basename="localization.text" />
<!DOCTYPE html>
<html lang="${language}">
<head>
<title>JSP/JSTL i18n demo</title>
</head>
<body>
<form accept-charset="UTF-8"><select id="language"
name="language" onchange="submit()">
<option value="en" ${language=='en' ? 'selected' : ''}>English</option>
<option value="ru" ${language=='ru' ? 'selected' : ''}>Russian</option>
</select></form>
<form name="loginForm" method="POST" action="controller"><input
type="hidden" name="command" value="login" /> <label for="login"><fmt:message
key="login.label.login" />:</label> <input type="text" name="login" value="">
<br>
<input type="hidden" name="command" value="password" /> <label
for="password"><fmt:message key="login.label.password" />:</label> <input
type="password" name="password" value=""> <br>
<fmt:message key="login.button.submit" var="buttonValue" /> <input
type="submit" name="submit" value="${buttonValue}"></form>
</body>
</html>

从上面的文字中可以得出,问题在于编码,而问题在于俄语。所以这是我的.properties文件(本地化文件夹中的text_ru.properties):
login.label.login = Логин
login.label.password = Пароль
login.button.submit = Отправить

顺便说一句,它的英文文件:
login.label.login = Login
login.label.password = Password
login.button.submit = Sign in

但是浏览器给了我这个东西:

我将.properties文件保存在utf-8中,并在两个程序的帮助下进行了尝试(第一个是Eclipse,第二个是Notepad++),但我真的不知道如何处理此编码问题。

将非常感谢您的帮助。

最佳答案

不幸的是,当通过.properties读取ResourceBundle文件时,总是期望使用ISO-8859-1。

通常的方法是对属性文件中的非ASCII字符进行unicode转义。然后看起来像这样:

hours.label=\u0427\u0430\u0441\u043e\u0432\u0435



AnyEdit tools是一个eclipse插件,使开发过程中的转义和转义变得容易。

另一种更乏味的方法是提供您自己的标签,该标签使用自己的 ResourceBundle实现,而该实现又使用 .load(reader),其中 reader使用 UTF-8

关于jsp - .properties或JSP的编码有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8423025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com