.NET(可能只是 VB.NET)中的 String.Format 将 {0}、{1}、... 转换为确定的字符串,例如:
Dim St As String = "Test: {0}, {1}"
Console.WriteLine(String.Format(St, "Text1", "Text2"))
我尝试在 Google 和 StackOverflows 中搜索,但它们都返回数字字符串格式。
.NET(可能只是 VB.NET)中的 String.Format 将 {0}、{1}、... 转换为确定的字符串,例如:
Dim St As String = "Test: {0}, {1}"
Console.WriteLine(String.Format(St, "Text1", "Text2"))
我尝试在 Google 和 StackOverflows 中搜索,但它们都返回数字字符串格式。
其他建议当然很好,但更多的是 Java 的风格printf
及其沿袭,这是 Java 的最新添加。您发布的代码看起来受MessageFormat
.
String format = "Test: {0}, {1}"
System.out.println(MessageFormat.format(format, "Text1", "Text2"))
不过,我不确定该'Return:
声明在做什么。
使用MessageFormat.format
,您还可以在替换标记中提供格式化参数。
message = MessageFormat.format("This is a formatted percentage " +
"{0,number,percent} and a string {1}", varNumber, varText);
System.out.println(message);
message = MessageFormat.format("This is a formatted {0, number,#.##} " +
"and {1, number,#.##} numbers", 25.7575, 75.2525);
System.out.println(message);
或者,String.format
可以使用,但这不能保证位置,例如String.format("What do you get if you multiply %d by %s?", varNumber, varText);
.
String.format("Test: %s, %s",string1,string2)
System.out.printf()
System.out.format()
对于其他方法,请使用:
StringBuilder sb = new StringBuilder();
Formatter f = new Formatter(sb, Locale.US);
f.format("my %s", "string");