国产精品一区二区三区……-大杳蕉伊人欧美一本遒在饯-日本不卡一区免费在线观看-国产亚洲欧美中文字幕

400-800-9385
網(wǎng)站建設(shè)資訊詳細(xì)

java網(wǎng)站開發(fā)中如何一鍵轉(zhuǎn)換簡體為繁體

發(fā)表日期:2023-09-12 16:05:53   作者來源:方維網(wǎng)絡(luò)   瀏覽:1138   標(biāo)簽:java網(wǎng)站開發(fā)    

現(xiàn)在很多公司網(wǎng)站需要簡體版、繁體版和英文版,英文版需要特別翻譯,而繁體版一般采用JS翻譯或者程序替換來翻譯,因?yàn)榉斌w和簡體不一樣的大概有2300多個,字體大小一樣,完全可以通過程序替換。

JS繁體和程序替換翻譯,兩者對比,程序翻譯體驗(yàn)度更好,JS翻譯,會有個翻譯的動作,影響用戶體驗(yàn)。下面方維網(wǎng)絡(luò)介紹JAVA開發(fā)的程序如何實(shí)現(xiàn)一段代碼來替換簡繁體。

主要采用Filter來實(shí)現(xiàn),在頁面輸出結(jié)果前對輸出內(nèi)容進(jìn)行攔截,然后替換文字,替換相關(guān)URL,然后再輸出。代碼如下:

@WebFilter(urlPatterns = "/zh/*",filterName = "ResponseFilter")
public class ResponseFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
String url = req.getRequestURI();
if(url.startsWith("/zh/")) {//只攔截繁體版
UrlResponseWrapper wrapperResponse = new UrlResponseWrapper((HttpServletResponse) response);//轉(zhuǎn)換成代理類
// 這里只攔截返回,直接讓請求過去,如果在請求前有處理,可以在這里處理
filterChain.doFilter(request, wrapperResponse);
String content_type = wrapperResponse.getContentType();
byte[] content = wrapperResponse.getResponseData();
if(content_type != null && content_type.equals("text/html;charset=UTF-8")) {
String str = new String(content);
//替換繁體
String str_zh = ChineseUtils.toZh(str);
str_zh = str_zh.replace("href=\"/news/", "href=\"/zh/news/");
str_zh = str_zh.replace("href=\"/about/", "href=\"/zh/about/");
str_zh = str_zh.replace("href=\"/investor/", "href=\"/zh/investor/");
str_zh = str_zh.replace("href=\"/responsibility/", "href=\"/zh/responsibility/");
str_zh = str_zh.replace("href=\"/product/", "href=\"/zh/product/");
content = str_zh.getBytes();
ServletOutputStream out = response.getOutputStream();
out.write(content);
out.flush();
} else {
filterChain.doFilter(request, response);
}
} else {
filterChain.doFilter(request, response);
}
}
}


 

如沒特殊注明,文章均為方維網(wǎng)絡(luò)原創(chuàng),轉(zhuǎn)載請注明來自http://pdcharm.com/news/6864.html
唐山市| 太康县| 颍上县| 潞城市| 射洪县| 仁寿县| 安塞县| 吉林省| 台安县| 盱眙县| 阿克陶县| 任丘市| 清涧县| 加查县| 定安县| 定安县| 丽水市| 泽普县| 肇庆市| 图木舒克市| 芷江| 垫江县| 龙江县| 田阳县| 大城县| 开平市| 尼玛县| 友谊县| 哈尔滨市| 永靖县| 宁城县| 新余市| 莱芜市| 光山县| 来凤县| 资中县| 威信县| 工布江达县| 汉中市| 稻城县| 尉氏县|