zoukankan      html  css  js  c++  java
  • java算法面试题:编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。


    package
    com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.ArrayList; import java.util.List; public class IO_jiaoti { public static void main(String[] args) throws Exception { /* * 编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b. * txt文件中用回车或空格进行分隔。 */ BufferedReader br1 = new BufferedReader( new InputStreamReader(new FileInputStream("e:\neck\a.txt"), "gb2312")); BufferedReader br2 = new BufferedReader( new InputStreamReader(new FileInputStream("e:\neck\b.txt"), "gb2312")); BufferedWriter bw = new BufferedWriter( new OutputStreamWriter(new FileOutputStream("e:\neck\c.txt"), "gb2312")); List<String> list1 = new ArrayList<String>(); List<String> list2 = new ArrayList<String>(); List<String> list3 = new ArrayList<String>(); String str1; while ((str1 = br1.readLine()) != null) { list1.add(str1); } StringBuffer sb = new StringBuffer(); int len; char[] buf = new char[1024]; while ((len = br2.read(buf)) != -1) { sb.append(buf, 0, len); } String[] bstr = sb.toString().split("\s"); for (String str : bstr) { System.out.println(str); if (str.matches("[a-zA-Z]{1,}")) { list2.add(str); } } if (list1.size() <= list2.size()) { for (int i = 0; i < list1.size(); i++) { list3.add(list1.get(i)); list3.add(list2.get(i)); } for(int i=list1.size();i<list2.size();i++) { list3.add(list2.get(i)); } }else { for (int i = 0; i < list2.size(); i++) { list3.add(list1.get(i)); list3.add(list2.get(i)); } for(int i=list2.size();i<list1.size();i++) { list3.add(list1.get(i)); } } for(String str:list3) { System.out.print(str+" "); bw.write(str); bw.write(" "); bw.flush(); } } }

  • 相关阅读:
    Java多线程学习(吐血超具体总结)
    java.lang.Integer can not be cast to java.lang.Long
    【转】随身HiFi 安卓OTG功能在音频上的妙用
    【转】锋狂百科:手机也能接外设 OTG技术详解
    【转】用串口登录Beaglebone Black、用usb共享电脑网络、内核模块的本地编译
    【转】Beagleboard:BeagleBoneBlack
    【转】
    【转】Beaglebone Black
    【转】你应该知道的 10 个 VirtualBox 技巧与高级特性
    如何把SKYPE的发送消息由enter改为ctrl+enter?
  • 原文地址:https://www.cnblogs.com/qingyundian/p/8341587.html
Copyright © 2011-2022 走看看