用java在记事本上读写



我在像这样的记事本中有一个文本字符串

记事本中的文本:

date amount intrest tenure debitamount name address state city zipcode phone altphone mailid refaddress ref  refphoneno emptype employment

12/11/1987 12345 3.5 144 32456 durga f rao 456 under road
dallas dl 2435 2222-22-2222 2222-22-2222 durgafrao@gmail.com
165 nala road raj 22-22-22-2222 it 12
15/05/1986 2345 6.4 144 45789 rama k nand 789 residensy  
newyork ny 2222-22-2222 2222-22-2222 ramaknand@yahoomail.com
189 ring road hen  22-22-22-22-2222 it 12
16/12/1985 1234 6.5 144 35265 rama j rao 123 dura residensy meknoor
mn 2222-22-2222 2222-22-2222 ramajrao@orkut.com 891 cing road vinky
22-22-22-2222 it 12
12/11/1987 12345 3.5 144 32456 durga f rao 456 under road dallas dl
2435 2222-22-2222 2222-22-2222 durgafrao@gmail.com 165 nala road raj
22-22-22-2222 it 12

         out put should be like below
in between name and address single space and all other double space

12/11/1987  12345  3.5  144  32456  durga f rao  456 under road
dallas  dl  2435  2222-22-2222  2222-22-2222  durgaao@gmail.com
165 nala road  raj  22-22-22-2222  it  12
15/05/1986  2345  6.4  144  45789  rama k nand  789 residensy  
newyork  ny  2222-22-2222 2222-22-2222  ramaad@yahoomail.com
189 ring road  hen  22-22-22-22-2222  it  12
16/12/1985  1234  6.5  144  35265  rama j rao  123 dura residensy  meknoor
mn  2222-22-2222  2222-22-2222  ramajo@orkut.com  891 cing road  vinky
22-22-22-2222  it  12
12/11/1987  12345  3.5  144  32456  dura f rao  456 under road  dallas  dl
2435  2222-22-2222  2222-22-2222  durga@gmail.com  165 nala road  raj
22-22-22-2222  it  12

我希望我的输出如下在名称和地址之间的单空格和所有其他双空格?

我写了下面的代码,但我无法获得所需的输出

有人能帮我吗?

我尝试过的代码:

public static String newLine = System.getProperty("line.separator");

    public static void main(String args[]){
        FileWriter iWrite=null;
         try {
             iWrite = new FileWriter("C:/Documents and Settings/pavan/My Documents/output.txt");
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } 
        try {
List<String> lines = FileUtils.readLines(new File("C:/Documents and Settings/pavan/My Documents/input.txt"));
        for(String lines1:lines){
            iWrite.write(lines1);
            iWrite.write(newLine);
        }
        iWrite.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

这是一个家庭作业问题,所以我没有想到最佳解决方案,但如果需要,这里有你可以做什么的sudo代码。

在此之前,让我假设数据实际上是基于您的标题的一行:

1987年12月11日12345 3.5 144 32456 durga f rao 456,位于达拉斯dl 2435 2222-22-2222durgafrao@gmail.com165纳拉路raj 22-22-22-2222 it 12

  • 创建阵列的ArrayList(又名ArrayList<String[]>
  • 对于您读取的每一行,使用split(" ")split("s")将换行符根据空格拆分为字符串
  • 一旦所有的行都被拆分并存储在arraylist中,就可以遍历列表
  • 在字符串数组列表中,您可以使用hack迭代数组
  • 破解方法是,你知道在什么时候你需要添加额外的空间,所以在一个数组中,当你到达特定的位置时,你可以添加和额外的空间。在其他任何地方,您都可以只添加一个空格

同样,这不是最佳解决方案。

对于您当前的代码,您所做的只是读取一行并在将其写回文件之前附加一个换行符。所以你的代码所做的就是制作

a a

b b b

c c c

进入

a a

b b b

c c c

从本质上讲,做的不多。

相关内容

  • 没有找到相关文章

最新更新