相关疑难解决方法(0)

使用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万
查看次数

从文件中读取字符串时,Kotlin 字符串替换不起作用

我写了一个读取文本文件的代码。文本文件包含我想替换的占位符。替换不会以这种方式工作,并且字符串与占位符一起打印。这是我为此编写的代码:

class TestSub(val sub: Sub) {

    fun create() = template()

    fun template() = Files.newBufferedReader(ClassPathResource(templateId.location).file.toPath()).readText()
}

data class Sub(val name: String, val age: Int)
Run Code Online (Sandbox Code Playgroud)

这是尝试打印最终字符串的主要函数:

fun main(args: Array<String>) {
    val sub = Sub("Prashant", 32)

    println(TestSub(sub).create())
}
Run Code Online (Sandbox Code Playgroud)

但是,当我使用字符串而不是读取文件时,以下代码有效(替换fun template()

fun template() = "<h1>Hello ${sub.name}. Your age is ${sub.age}</h1>"
Run Code Online (Sandbox Code Playgroud)

有没有办法在读取文件内容时使字符串替换工作?

kotlin

2
推荐指数
1
解决办法
8291
查看次数

标签 统计

java ×1

kotlin ×1

resourcebundle ×1