编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔

 1 package sundemo2;
 2
 3 import java.io.File;
 4 import java.io.FileReader;
 5 import java.io.FileWriter;
 6
 7 public class MainClass{
 8     public static void main(String[] args) throws Exception{
 9         FileManager a = new FileManager("E:\\WorkSpace\\SunDemo\\data\\demo\\a.txt",new char[]{‘\n‘});
10         FileManager b = new FileManager("E:\\WorkSpace\\SunDemo\\data\\demo\\b.txt",new char[]{‘\n‘,‘ ‘});
11         FileWriter c = new FileWriter("E:\\WorkSpace\\SunDemo\\data\\demo\\c.txt");
12         String aWord = null;
13         String bWord = null;
14         while((aWord = a.nextWord()) !=null ){
15             c.write(aWord + "\n");
16             bWord = b.nextWord();
17             if(bWord != null)
18                 c.write(bWord + "\n");
19         }
20
21         while((bWord = b.nextWord()) != null){
22             c.write(bWord + "\n");
23         }
24         c.close();
25     }
26 }
27
28 class FileManager{
29     String[] words = null;
30     int pos = 0;
31     public FileManager(String filename,char[] seperators) throws Exception{
32         File f = new File(filename);
33         FileReader reader = new FileReader(f);
34         char[] buf = new char[(int)f.length()];
35         int len = reader.read(buf);
36         String results = new String(buf,0,len);
37         String regex = null;
38         if(seperators.length > 1 ){
39             regex = "" + seperators[0] + "|" + seperators[1];
40         }else{
41             regex = "" + seperators[0];
42         }
43         words = results.split(regex);
44     }
45
46     public String nextWord(){
47         if(pos == words.length)
48             return null;
49         return words[pos++];
50     }
51 }  
时间: 2024-09-30 19:41:49

编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔的相关文章

《编写一个程序,从一个文件中读出字符串,并显示在屏幕上》

注意:在程序的第11行用fgets函数读入字符串时,指定一次读入10个字符,但按fgets函数的规定, 如果遇到“\n”就结束字符串输入,“\n”作为最后一个字符也读入到字符数组中 //编写一个程序,从f:\\FILE_1\\file_2.txt中读回字符串 #include<stdio.h>#include<string.h>#include<stdlib.h>int main(){ FILE *fp; char str[3][10]; int i=0; if((fp

编写一个程序,将 d: \ java 目录下的所有.java 文件复制到d: \ jad 目录下,并 将原来文件的扩展名从.java 改为.jad

1.编写一个程序,将 d: \ java 目录下的所有.java 文件复制到d: \ jad 目录下,并 将原来文件的扩展名从.java 改为.jad package copy; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; i

编写一个程序,指定一个文件夹,能自动计算出其总容量

package wenjianyuliu;//编写一个程序,指定一个文件夹,能自动计算出其总容量import java.io.File;import java.util.ArrayList; public class Size {   static long size=0; private static ArrayList<String> filelist=new ArrayList<String>(); public static void main(String[] args)

编写一个程序,从标准输入中读取若干string对象并查找连续重复出现的单词。所谓连续重复出现的意思是:一个单词后面紧跟着这个单词本身。要求记录连续重复出现的最大次数以及对应的单词

#include<iostream> #include<string> #include<vector> using namespace std; int main() { string maxStr,Str1,Str2; int maxNum,Num1,Num2; if(cin>>Str1) Num1=1; maxNum=0; while(cin>>Str2) { Num2=1; if(Str2==Str1) Num2=++Num1; if(N

编写一个程序,统计输入字符串中每一个小写英文字母出现的次数

import java.util.Scanner; /** * @author:(LiberHome) * @date:Created in 2019/3/1 22:18 * @description: * @version:$ */ /*编写一个程序,统计输入字符串中每一个小写英文字母出现的次数*/ public class page0901 { public static void main(String[] args) { /*首先,输入一段字符串作为字符数组*/ System.out.p

编写一个程序,实现&quot;全部替换&quot;功能.

# 编写一个程序,实现"全部替换"功能. def file_replace():    file_name = input("请输入文件名:")    # 判断输入的路径或文件是否存在    try:        f_read = open(file_name)    except:        print("路径或文件不存在,请重新输入.")        return file_replace()  # 如果出错,则重新返回调用函数 re

c语言:编写一个程序,可以直接接收键盘字符

编写一个程序,可以直接接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出. 程序1: #include <stdio.h> int main() { int t = 0; printf("请输入一个字符:"); t = getchar(); if (t >= 'a'&&t <= 'z') { putchar(t-32); } else if(t >= 'A'&&t 

编写一个程序,用户输入两个数,求出其加减乘除,并用消息框显示计算结果

编写一个程序,用户输入两个数,求出其加减乘除,并用消息框显示计算结果 import javax.swing.JOptionPane; public class Test{ public static void main(String[] args) { int n1=Integer.parseInt(JOptionPane.showInputDialog("Input number 1: ")); int n2=Integer.parseInt(JOptionPane.showInpu

编写一个程序把较长的输入行“折”成短一些的两行或多行

/*******************************************编写一个程序把较长的输入行"折"成短一些的两行或多行,折行的位置在输入行的第n列之前的最后一个非空格符之后.要保证程序能够智能地处理输入行很长以及在指定的列前没有空格或制表符的情况.*************************************************/#include <stdio.h>#define MAXCOL 10#define TABINC 8cha

编写一个程序找出100~999之间所有的水仙花数

如果一个3位数等于其各位的立方和,称该数为水仙花数. 如,所以407是一个水仙花数,编写一个程序找出100~999之间所有的水仙花数. 1 #include<stdio.h> 2 #include<stdlib.h> 3 //判断水仙花数,是则返回1 4 int isNarcissus(int n); 5 6 int main() 7 { 8 int i; 9 for(i = 100; i < 1000; i++) 10 if(isNarcissus(i)) 11 print