0
我有要求根据从先前保存的JSON文件填充的翻译查找映射中可用的数据在我的应用程序中显示数据。当我在eclipse中运行应用程序时,它正在读取文件,并以我想要的不同语言显示数据;项目的文本文件编码是“UTF-8”。但是在使用下面给出的build.xml构建我的应用程序之后。语言数据来作为?在java应用程序中生成
<project name="DRIS" default="create_jar">
<path id="project.class.path">
<pathelement location="lib/"/>
<pathelement path="${java.class.path}/"/>
</path>
<target name="create_jar">
<tstamp>
<format property="DSTAMP" pattern="yyyy/MM/dd hh:mm aa"/>
</tstamp>
<jar destfile="LDC_MCM.jar">
<zipfileset dir="bin" prefix=""/>
<zipfileset src="lib\obcsclient.jar"/>
<zipfileset src="lib\comm.jar"/>
<zipfileset src="lib\obcsclientfrmk.jar"/>
<zipfileset src="lib\commons-net-ntp.jar"/>
<zipfileset src="lib\org.json.jar"/>
<manifest>
<attribute name="Java-Version" value="${java.version} "/>
<attribute name="Main-Class" value="com.ars.ldcmcm.Launcher"/>
<attribute name="Class-Path" value="comm.jar jmf.jar mediaplayer.jar obcsclient.jar obcsclientfrmk.jar sound.jar commons-net-ntp.jar"/>
<attribute name="Application-Name" value="LDC_MCM"/>
<attribute name="Application-Version" value="1.85.106.120"/>
<attribute name="Application-Vendor" value="ARS Software Engineering Pvt. Ltd"/>
<attribute name="Application-built-on" value="${DSTAMP}" />
<attribute name="Application-built-by" value="${user.name}"/>
</manifest>
</jar>
</target>
然后我跑我的应用程序JAR它显示在其他语言???数据。我不太熟悉蚂蚁。我最好的假设是,它可能是因为UTF-8编码没有在ANT中指定,如果有的话,是否有人可以请我指出我应该在哪里指定我的编码在上面的XML文件。如果我的假设是错误的,有人可以帮助我解决这个问题。
这是一段代码,我用它来从JSON文件
BufferedReader in = new BufferedReader(
new InputStreamReader(
new FileInputStream(config.getStringValue("TRANSLOOKUP_FOLDER")
+ "\\"
+ config.getStringValue("TRANSLOOKUP_FILENAME")), "UTF8"));
String str = "";
in.mark(1);
if(in.read() != '\uFEFF') {
in.reset();
}
while ((str = in.readLine()) != null) {
jsonStr.append(str);
}
in.close();
对不起,这不会解决我的问题,我不确定编译时的文件编码是否是问题 – Manesh
是否由您的应用程序在Eclipse之外找到json文件? – LuisGP
是的,它在一个单独的文件夹中... – Manesh