gpt4 book ai didi

java - 使用 Google Guava 格式化字符串

转载 作者:行者123 更新时间:2023-12-02 08:36:39 35 4
gpt4 key购买 nike

我正在使用 Google guava 来格式化字符串并使用 BufferedWriter 将它们写入文本文件

import com.google.common.base.Strings;
import java.io.*;

public class Test {

public static void main(String[] args) {
File f = new File("MyFile.txt");
String firstName = "STANLEY";
String secondName = "GATUNGO";
String thirdname = "MUNGAI";
String location = "NAIROBI";
String school = "STAREHE BOYS CENTRE";
String yob= "1970";
String marital = "MARIED";
String texture = "LIGHT";

try {
BufferedWriter bw = new BufferedWriter(new FileWriter(f));
if (!f.exists()) {
f.createNewFile();
}
bw.write(Strings.padStart(firstName, 0, ' '));
bw.write(Strings.padStart(secondName, 20, ' '));
bw.write(Strings.padStart(thirdname, 20, ' '));
bw.write(Strings.padStart(location, 20, ' '));
bw.newLine();
bw.write(Strings.padStart(school, 0, ' '));
bw.write(Strings.padStart(yob, 20, ' '));
bw.write(Strings.padStart(marital, 20, ' '));
bw.write(Strings.padStart(texture, 20, ' '));


bw.close();
} catch (Exception asd) {
System.out.println(asd);
}
}
}

我的输出是 My output

我需要输出

Desired Output

我从数据库和数据库接收字符串,上面的硬编码只是一个例子,我需要编写字符串,使第一个字符串的长度不会影响第二个字符串的开始位置。我需要使用 Google Guava 以 Column Manner 方式从同一位置开始编写它们。我也会欣赏示例。

最佳答案

字符串.format

您可以简单地使用 String.format()而不是Guava 。它遵循 C printf 语法 described here 。我认为它满足您的需求。

String aVeryLongString="aaabbbcccdddeeefffggghh";
String aShortString="abc";
String anotherString="helloWorld";

String formattedString=String.format("%5.5s,%5.5s,%5.5s",aVeryLongString,aShortString,anotherString);

System.out.println(formattedString);

输出:

aaabb,  abc,hello

如您所见,长字符串被剪切,短字符串被填充。

关于java - 使用 Google Guava 格式化字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16099400/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com