0

我通过 Spring 配置了 ReloadableResourceBundleMessageSource。一切正常。我正在尝试在资源包中添加更多字符串,但是,我看到了 UnknownFormatConversionException。

我希望输出为:
Following filesystems are below threshold level (25%):/db

我的资源包有
filesystemsBelowThreshold=Following filesystems are below threshold level {0}%:{1}

但是,上面的格式不起作用,它抱怨
UnknownFormatConversionException: Conversion = ')'.
如果我删除圆括号,它抱怨
UnknownFormatConversionException: Conversion = ':'.
我尝试用另一个 % 转义 %
filesystemsBelowThreshold=Following filesystems are below threshold level {0}%%:{1},但是,我UnknownFormatConversionException: Conversion = ':'.

知道如何解决这个问题?

4

1 回答 1

0

这是代码

<bean id="messageSource"
        class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <property name="basename" value="classpath:messages" />
        <property name="defaultEncoding" value="UTF-8" />
    </bean>

和属性文件

filesystemsBelowThreshold=Following filesystems are below threshold level {0}%:{1}

和测试

        Object[] obj = {25, "/db"};
        String str= message.getMessage("filesystemsBelowThreshold", obj, null);
        System.out.println(str);

和输出

以下文件系统低于阈值级别 25%:/db

于 2013-10-17T20:05:02.677 回答