启动一个线程,执行以下任务:已知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中。

关于#IO#的问题,如何解决?(语言-java)
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注
以下是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(); }
这段代码是简单实现,不知道是不是作者想要表达的意思
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报