标签: resourcebundle

如何在ResourceBundle的资源属性中使用UTF-8

我需要在使用Java的资源属性中使用UTF-8 ResourceBundle.当我将文本直接输入属性文件时,它显示为mojibake.

我的应用在Google App Engine上运行.

谁能举个例子?我无法完成这项工作.

java google-app-engine resourcebundle utf-8 internationalization

248
推荐指数
9
解决办法
22万
查看次数

放置在资源包中时,撇号无法正确转换

放置在资源包中时,撇号无法正确转换.

key = {0}'s brush is {1} centimeters tall

(e.g. Sam's brush is 4 centimeters tall)
Run Code Online (Sandbox Code Playgroud)

如果我从java.util.ResourceBundle这里的问题格式化上面的键,撇号会被错过?

java resourcebundle

83
推荐指数
6
解决办法
3万
查看次数

从JUnit测试用例中找不到资源文件

摘要

我的JUnit测试没有找到执行期间所需的文件.我正在使用Maven进行依赖管理和编译.

细节

测试用例所需的所有文件都位于:src/test/resources.

例如,src/test/resources/resourceFile.txt.

要访问资源,我使用以下代码:

URL url = getClass().getResource("/resourceFile.txt").getFile();
File file = new File(url);
Run Code Online (Sandbox Code Playgroud)

但后来file.exists()回归false.而我得到的错误是:

Tests in error: 
  myJUnitTestCase(tests.MyJUnitTestClass): /home/me/workspace/Project%20Name/target/test-classes/resourceFile.txt (No such file or directory)
Run Code Online (Sandbox Code Playgroud)

注意,以下内容给出了相同的错误(注意删除的/前缀):

URL url = getClass().getClassLoader().getResource("resourceFile.txt").getFile();
File file = new File(url);
Run Code Online (Sandbox Code Playgroud)

似乎来自的文件src/test/resources没有被复制到target/test-classes.

有任何想法吗?

以下问题没有帮助

为什么我不能在使用Maven的Junit测试运行中访问src/test/resources?

在JUnit @BeforeClass中加载属性文件

如何在Junit中处理测试数据?

软件版本

Ubuntu 12.04

Apache Maven 2.2.1

Java 1.7.0

Eclipse(面向Web开发人员的Java EE IDE)Indigo Service Release 2

(截断)Maven POM

<?xml version="1.0" encoding="UTF-8"?>
<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.groupId</groupId>
    <artifactId>artifactId</artifactId> …
Run Code Online (Sandbox Code Playgroud)

java junit unit-testing resourcebundle maven

63
推荐指数
2
解决办法
9万
查看次数

使用Java中的MessageFormat.format()格式化消息

我已经在资源包中存储了一些消息.我正在尝试格式化这些消息,如下所示.

import java.text.MessageFormat;

String text = MessageFormat.format("You're about to delete {0} rows.", 5);
System.out.println(text);
Run Code Online (Sandbox Code Playgroud)

假设第一个参数即实际消息存储在以某种方式检索的属性文件中.

第二个参数即5是一个动态值,应该放在{0}不会发生的占位符中.下一行打印,

您即将删除{0}行.

占位符不会替换为实际参数.


这是撇号 - You're.我试图像往常一样逃避它,就You\\'re好像它不起作用.要使其发挥作用需要做哪些改变?

java resourcebundle

58
推荐指数
4
解决办法
8万
查看次数

如何从Java中的文件资源加载资源包?

我有一个名为mybundle.txtc:/temp-

c:/temp/mybundle.txt

如何将此文件加载到java.util.ResourceBundle?该文件是有效的资源包.

这似乎不起作用:

java.net.URL resourceURL = null;

String path = "c:/temp/mybundle.txt";
java.io.File fl = new java.io.File(path);

try {
   resourceURL = fl.toURI().toURL();
} catch (MalformedURLException e) {             
}           

URLClassLoader urlLoader = new URLClassLoader(new java.net.URL[]{resourceURL});
java.util.ResourceBundle bundle = java.util.ResourceBundle.getBundle( path , 
                java.util.Locale.getDefault(), urlLoader );
Run Code Online (Sandbox Code Playgroud)

java resourcebundle

47
推荐指数
6
解决办法
20万
查看次数

捆绑.js文件与CDN

为了提高网页的性能,我们建议使用CDN来提供.js网页上的文件.那讲得通.

此外,我们建议捆绑我们的.js文件,以减少加载时对服务器的请求数.

因此,如果我们使用CDN或捆绑.js文件,我们需要坐下来做出决定.

优缺点都有什么?哪些更有意义?

javascript asp.net resourcebundle cdn asp.net-optimization

47
推荐指数
2
解决办法
8026
查看次数

Java中的资源包是否支持运行时字符串替换?

您可以使用Java ResourceBundle执行以下操作吗?

在属性文件中......

example.dynamicresource=You currently have {0} accounts.
Run Code Online (Sandbox Code Playgroud)

在运行时......

int accountAcount = 3;
bundle.get("example.dynamicresource",accountCount,param2,...);
Run Code Online (Sandbox Code Playgroud)

给出结果

"你目前有3个账户."

java resourcebundle

38
推荐指数
3
解决办法
3万
查看次数

java.util.MissingResourceException:找不到基本名称'property_file name'的包,locale en_US

我正在尝试创建一个实用程序类,ReadPropertyUtil.java用于从属性文件中读取数据.虽然我的类位于util目录下,但我的skyscrapper.properties文件放在其他目录中.

但是,当我尝试使用属性访问时[ResourceBundle][1],我得到异常,无法加载该包.

下面是我如何阅读属性的代码,以及显示我的目录结构的图像.

ReadPropertiesUtil.java

/**
 * Properties file name.
 */
private static final String FILENAME = "skyscrapper";

/**
 * Resource bundle.
 */
private static ResourceBundle resourceBundle = ResourceBundle.getBundle(FILENAME);

/**
 * Method to read the property value.
 * 
 * @param key
 * @return
 */
public static String getProperty(final String key) {
    String str = null;
    if (resourceBundle != null) {
        str = resourceBundle.getString(key);
            LOGGER.debug("Value found: " + str + " for key: " + key); …
Run Code Online (Sandbox Code Playgroud)

java properties resourcebundle

34
推荐指数
4
解决办法
16万
查看次数

如何在属性文件中指定值,以便可以使用ResourceBundle#getStringArray检索它们?

我试图用来从属性文件中ResourceBundle#getStringArray检索一个String[].文档中对此方法的描述如下:

从此资源包或其父项之一获取给定键的字符串数组.

但是,我尝试将值作为多个单独的键/值对存储在属性文件中:

key=value1
key=value2
key=value3
Run Code Online (Sandbox Code Playgroud)

并以逗号分隔的列表:

key=value1,value2,value3
Run Code Online (Sandbox Code Playgroud)

但这些都不是可以使用的ResourceBundle#getStringArray.

如何在属性文件中表示一组键/值对,以便可以使用它们进行检索ResourceBundle#getStringArray

java resourcebundle

31
推荐指数
3
解决办法
6万
查看次数

捆绑脚本文件未呈现.

脚本文件名:

jquery.transit.min.js
Run Code Online (Sandbox Code Playgroud)

该文件位于Scripts文件夹中,

bundles.Add(new ScriptBundle("~/bundles/jquery")
       .Include("~/Scripts/jquery-{version}.js"));

bundles.Add(new ScriptBundle("~/bundles/jqueryui")
       .Include("~/Scripts/jquery-ui-{version}.js"));

bundles.Add(new ScriptBundle("~/bundles/jqueryval")
       .Include("~/Scripts/jquery.unobtrusive*", "~/Scripts/jquery.validate*"));

bundles.Add(new ScriptBundle("~/bundles/jtransit")
       .Include("~/Scripts/jquery.transit*"));
Run Code Online (Sandbox Code Playgroud)

在我的View,

@Scripts.Render("~/bundles/jquery","~/bundles/jtransit")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/jqueryval")
Run Code Online (Sandbox Code Playgroud)

渲染 HTML

<script src="/Scripts/jquery-1.8.3.js"></script>
<script src="/Scripts/jquery-ui-1.9.2.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
Run Code Online (Sandbox Code Playgroud)

jquery.transit.min.js不会被渲染.我错过了什么?

asp.net-mvc jquery resourcebundle

30
推荐指数
3
解决办法
3万
查看次数