关于#IO#的问题,如何解决?(语言-java)

启动一个线程,执行以下任务:已知string.txt文件中有如下两行内容:
ONUID RxPower RxPowerR TxPower TxPowerR CurrTxBias
35 -20.22 Normal 2.03 Normal 8
将以上内容从文件中读取出来,并解析为如下格式:
{ONUID=35,RxPower=-20.22,RxPowerR=Normal, TxPower=2.03,TxPowerR=Normal,CurrTxBias=8}
然后将解析完的内容写入到string2.txt中。

以下是Java实现代码:

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.HashMap;

public class ParseStringFile implements Runnable {
    @Override
    public void run() {
        try {
            // 读取 string.txt 文件
            BufferedReader reader = new BufferedReader(new FileReader("string.txt"));
            String line;
            while ((line = reader.readLine()) != null) {
                // 解析每行内容
                String[] items = line.split(" ");
                HashMap<String, String> map = new HashMap<>();
                map.put("ONUID", items[0]);
                map.put("RxPower", items[1]);
                map.put("RxPowerR", items[2]);
                map.put("TxPower", items[3]);
                map.put("TxPowerR", items[4]);
                map.put("CurrTxBias", items[5]);
                
                // 将解析完的内容写入 string2.txt 文件
                BufferedWriter writer = new BufferedWriter(new FileWriter("string2.txt", true)); // 追加模式
                writer.write(map.toString() + "\n");
                writer.close();
            }
            reader.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在主程序中启动线程并执行:

public static void main(String[] args) {
    Thread t = new Thread(new ParseStringFile());
    t.start();
}

这段代码是简单实现,不知道是不是作者想要表达的意思