【发布时间】:2019-08-02 21:08:57
【问题描述】:
我似乎无法让 StringUtils.capitalize 真正将我的整个单词字符串大写。
我尝试了各种方法,但我最终得到了句子类型的案例。我尝试在要打印的内容中使用 StringUtils.capitalize,但这也不起作用。我查找的内容也没有任何帮助。
File file =
new File("C:\\Users\\mikek\\Desktop\\name.txt");
BufferedReader abc = new BufferedReader(new FileReader(file));
List<String> data = new ArrayList<String>();
String s;
String t;
while((s=abc.readLine()!=null) {
data.add(s);
System.out.println("public static final Block " + s.toUpperCase() + " = new "
+ StringUtils.capitalize(s).replace("_","") + "(\"" + s + "\", Material.ROCK);");
}
abc.close();
}
预期:木炭块 得到:木炭块
【问题讨论】:
-
我不明白。除了
Charcoal Block之外,你是要存储在data还是什么? -
文档说“大写一个字符串,根据 Character.toTitleCase(int) 将第一个字符更改为标题大小写。没有其他字符被更改。”,所以它不会打扰你的其他单词细绳。它只使用第一个字符,没有别的。该文档还建议查看
WordUtils.capitalize(String)。你应该听取他们的建议。 -
@Luiggi 我正在尝试制作一个模组工具。添加每个项目非常繁琐,我正在写这篇文章以提高我的效率。实际上,我正在生成代码以复制/粘贴到我的 mod 中。
-
在调用
data.add(t)后更改t不会更改data中的内容。它只是让变量t指向一个不同的字符串对象,这个对象从未添加到任何列表中。 -
VGR 所以基本上,当我从我的文本文件中引入“charcoal_block”时,“charcoal_block”变成了字符串并用“”替换了“_”编辑了那个字符串?就像,它变成“木炭块”,因为 .capitalize 只将每个单独的字符串大写,而我没有做任何事情使它成为 2 个字符串? (如果这有任何意义)
标签: java string-utils