java - 在java中的特定位置在文本文件中写一个单词

标签 java mysql text-files filewriter

我正在编写一个项目,其中我必须在文本文件中写入 MySQL 数据库中的问题和标记(问题和标记在数据库中的不同列中,但在同一个表中)。在这里,我想在相同的位置写标记,即在每个问题之后垂直对齐。

我尝试使用\t 但它无法获得所需的输出

while(myRs.next()) {
        String question = myRs.getString("question");
        String marks = myRs.getString("questionMarks");
        try {
        file.write(question+"\t\t\t\t\t\t\t" + marks + "\n");//write to text file
        }
        catch(Exception exe) {
            System.out.println(exe);
        }
        System.out.println("Q" + count +". " + question);
    }

期望的输出是:

(单个“.”表示实际输出中的空格,“Question1”、“Question2”、“Question3”不是实际问题,而是语句)

Q1. Question1.............................4

Q2. Question2.............................4

Q3. Question3.............................5

实际输出为:

Q1. Question1........................ 4

Q2. Question2................................4

Q3. Question3...........................5

最佳答案

您只需要计算问题的大小并将剩余的空格添加到您喜欢的行大小即可。

有关重复字符的替代方法,请参阅 add characters n-times

int maxlinesize = 40;
int count=0;

while(myRs.next()) {
    String question = myRs.getString("question");
    String marks = myRs.getString("questionMarks");
    count++;
    String q="Q"+count+" "+question;
    StringBuffer buffer = new StringBuffer();
    buffer.append(String.join(q, java.util.Collections.nCopies(maxlinesize - q.length(), " ")))
    .append(marks);
    try {
        file.write(buffer.toString()+ "\n");//write to text file
    }
    catch(Exception exe) {
        System.out.println(exe);
    }
}

关于java - 在java中的特定位置在文本文件中写一个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57560059/

相关文章:

java - 缓存控制在 Firefox 中不起作用

java - 如何?使用 Retrofit2 将当前日期从 Android 插入到 mySQL 数据库中

java - Spring 启动 + Spring 安全 : how to suppress the basic auth form

php - 将变量从 AJAX 传递到 PHP 以进行 MySQL 查询时出错

python,NoneType对象没有属性 '__getitem__',MySQL查询

perl - 如何根据一组行的列的最低值对文本文件的内容进行排序

text-files - 如何在谷歌驱动器中查看 C# .cs 文件?

crystal-reports - 是否可以在 Crystal Reports 中显示文本文件的内容

java - Spring Data REST - PUT 请求自 v.2.5.7 起无法正常工作

Java mac向dock图标添加通知(1)、(2)等