吃花椒的喵酱丶 2023-03-23 14:22 采纳率: 100%
浏览 36
已结题

关于#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中。

  • 写回答

1条回答 默认 最新

  • 海洋 之心 2022年度博客之星人工智能领域TOP 1 2023-03-23 14:28
    关注

    以下是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();
    }
    

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月5日
  • 已采纳回答 3月28日
  • 创建了问题 3月23日

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号