首页 > 其他分享 >用native2ascii.exe实现国际化

用native2ascii.exe实现国际化

时间:2023-06-09 10:05:23浏览次数:61  
标签:国际化 java title native2ascii exe println txt out


用native2ascii.exe实现国际化
用java SDK/bin目录下的native2ascii.exe把.peoperties文件中的中文转换成unicode字符,实现国际化
需要用到java SDK\\bin 目录下的native2ascii.exe程序,把你写的文本文件转成unicode字符即可,
 
native2ascii - Native-to-ASCII Converter
将一个文件中的非拉丁或非UNICODE字符形式转换成拉丁或UNICODE字符的文件。
native2ascii [options] [inputfile [outputfile]]
Java编译器和其它的Java工具仅仅能够处理Latin-1或者Unicode(\?形式)编码的字符,native2ascii工具将包含其它编码形式的文件转换成拉丁或UNICODE格式。

native2ascii a.txt b.txt  //从a.txt的中文转换成b.txt编码
可选项参数
-reverse 
执行还原操作:把一个文件从拉丁或UNICODE格式转换成本地编码格式的字符。
 native2ascii  -reverse  a.txt b.txt  //从a.txt的编码转换成b.txt中文

例: native2ascii 源文件名.txt 新文件名.txt

测试 ResourceBundleTest.java

import java.util.Locale;
import java.util.ResourceBundle;

p lic class ResourceBundleTest 
{
    p lic static void main(String args[]) 
{
        ResourceBundle rb = ResourceBundle.getBundle("LocalStrings", Locale.CHINA);
        //LocalStrings 为peoperties文件的文件名称
        String title = rb.getString("helloworld.title");
        System.out.println(title);
    }
}
LocalStrings.properties
# This locale is zh_CN
helloworld.title=你好啊~~
输出乱码~~
用native2ascii.exe把中文格式化
# This locale is zh_CN
helloworld.title=\你\好\啊~~
输出:
你好啊~~
在Servlet中的例子应用,Tomcat下的例子,根据reqst不同选择响应的语言也不相同~~
/**//*
* Copyright 2004 The Apache Software Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific lang ge governing permissions and
* limitations under the License.
*/
/**//* $Id: HelloWorldExample.java,v 1.3 2004/03/18 16:40:33 jfarcand Exp $
 *
 */

import java.io.*;
import java.text.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

/** *//**
 * The simplest possible servlet.
 *
 * @author James Duncan Davidson
 */

p lic class HelloWorldExample extends HttpServlet 
{


    p lic void doGet(HttpServletReqst reqst,
                      HttpServletResponse response)
        throws IOException, ServletException
    
{
        ResourceBundle rb =
            ResourceBundle.getBundle("LocalStrings",reqst.getLocale());
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        out.println("<html>");
        out.println("<head>");

        String title = rb.getString("helloworld.title");

        out.println("<title>" + title + "</title>");
        out.println("</head>");
        out.println("<body bgcolor=\"white\">");

    // note that all links are created to be relative. this
    // ensures that we can move the web application that this
    // servlet belongs to to a different place in the url
    // tree and not have any harmful side effects.

        // XXX
        // making these absolute till we work out the
        // addition of a PathInfo iss

        out.println("<a href=\"../helloworld.html\">");
        out.println("<img src=\"../images/code.gif\" height=24 " +
                    "width=24 align=right border=0 alt=\"view code\"></a>");
        out.println("<a href=\"../index.html\">");
        out.println("<img src=\"../images/return.gif\" height=24 " +
                    "width=24 align=right border=0 alt=\"return\"></a>");
        out.println("<h1>" + title + "</h1>");
        out.println("</body>");
        out.println("</html>");
    }
}

标签:国际化,java,title,native2ascii,exe,println,txt,out
From: https://blog.51cto.com/u_16065168/6445474

相关文章

  • dnSpy进行反编译修改并编译运行EXE或DLL
    软件界面如下:回到目录回到目录该软件分别64位版本及32位版本,分别为dnSpy.exe及 dnSpy-x86.exe,调试时请注意调试所对应软件版本。回到目录现在进入话题:回到目录一、首先编写一个HelloWorld的控制台运行程序,如下图所示:回到目录回到目录代码如下:回到目录usingSystem;using......
  • QuasarRAT-windows下远程控制工具 之前用过 生成Client.exe 然后远控你的机器
    QuasarRAT-windows下远程控制工具怀揣梦想的大鸡腿2018-02-2810:00:314873收藏1分类专栏:安全版权资源:https://github.com/quasar/QuasarRATQuasar是一种用C#编码的快速轻量级远程管理工具。Quasar提供高稳定性和简单易用的用户界面,是远程管理解决方案。就一开源的远控......
  • 【转载】configure: error: C compiler cannot create executables 错误解析
    1原文地址configure:error:Ccompilercannotcreateexecutables错误解析-to_be_better_wen-https://blog.csdn.net/to_be_better_wen/article/details/1306507742前言在编译开源软件的时候,有时会遇到"configure:error:Ccompilercannotcreateexecutables"的错......
  • 25)m2e-execution-not-covered 具体例子
    http://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.html  这个插件定义的phase不包含在Eclipsem2e的生命周期内。(这种情况很正常,自己定义的插件所在的phase可以是各种各样的) 出现这种情况除了有个讨厌的红叉,不会影响正常的mavenbuild,只是eclipse......
  • m2e-execution-not-covered
    http://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.htmlBackgroundM2Eclipse0.12andearlierexecutedsomepartsofMavenbuildlifecycleinsideEclipseandthenconfiguredtheEclipseprojectbasedonafter-executionstatecollectedinM......
  • C# cmd 生成 exe文件
    生成单独的exe文件C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exeProgram.cs生成exe文件的步骤如下:1.使用文本编辑器(如Notepad++或VisualStudioCode)编写C#源代码,并将其保存为.cs文件(例如,`Program.cs`)。2.打开一个命令提示符(在Windows中按下Windows+......
  • SpringMVC 国际化 Hibernate Validator 扩展注解
    高版本JDKHibernateValidator扩展注解https://stackoverflow.com/questions/35986200/error-creating-bean-with-name-org-springframework-validation-beanvalidation-opt1.JDK8版本需要添加的jar包springmvc验证需要的jar├─classmate-0.8.0.jar├─hibernate-v......
  • 【GiraKoo】adb.exe频繁崩溃,与Android设备连接不稳定
    【解决方案】adb.exe频繁崩溃,与Android设备连接不稳定在使用AndroidStudio时,发现adb.exe连接非常不稳定。通过EveryThing工具搜索关键字adb.exe。发现了大量的AppCrash_adb文件夹,adb.exe.xxx.dmp文件等情况。初步判断,应当是adb在运行时,程序频繁崩溃。遇到此类问题,尝试了以下几......
  • ExecutorService 的理解和使用
    前言:我们之前使用线程的时候都是使用newThread来进行线程的创建,但是这样会有一些问题。如:a.每次newThread新建对象性能差。b.线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或oom。c.缺乏更多功能,如定时执行、定期执行、线程中断。相比new......
  • Mysql 主从备份 Last_Errno: 1146 Last_Error: Error executing row event: 错误问题
    本人在做主从备份的时候发现了此问题! 1主数据库是已经把这个表删除了丛数据库也是没有备份这个表但是一直报这个错原因是bin-log日志有这个表 但是没记录到已经把这个表删除了 主从表同步实际从库是根据主库的bin-log二进制的SQL进行执行的 这是Mysql的一个BUG1......