繁体   English   中英

用行尾Java替换txt文件中的连词

[英]replace conjunctions from a txt file by end of line java

嘿,我需要代码以行尾替换txt文件中所有出现的连词。 我有一个保存在txt文件中的连词列表。我希望将输入文件和连词文件都以数组形式存储。然后使用for循环我想比较两个数组。但这会带来很多错误。更好的方法来做到这一点? 这是我尝试做的,但是它在for循环中显示错误

import java.util.List;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFileChooser;
public class Toarray
    {
    private static Object arrays;
    public static void main(String args[]) throws FileNotFoundException
     {
      String filename,path;
      System.out.println("select the input file");
      JFileChooser chooser = new JFileChooser();
      chooser.showOpenDialog(null);               
      File file1 = chooser.getSelectedFile();               
                chooser.showOpenDialog(null);           

                 filename = file1.getName();
                path= file1.getPath();

                Scanner sc;
                sc = new Scanner(new File(filename));
                List<String> lines = new ArrayList<String>();
                while (sc.hasNextLine()) {
                    lines.add(sc.nextLine());
                }

               String[] inp = lines.toArray(new String[0]);

               for (int index=0;index<=20;index++ ){
System.out.println(inp[index]);}

               String remove;
                remove="/Machintosh HD/Users/vaishnavi/Desktop/temp.txt";
                Scanner sc1;
                sc1 = new Scanner(new File(remove));
                List<String> con;
                con = new ArrayList<String>();
                while (sc1.hasNextLine()) {
                     lines.add(sc1.nextLine());
                }

               String[] conj = con.toArray(new String[0]);      
             }
     StriString oldtext;
         for(int i=0;i<=55;i++)

                 {
                  for(int j=0;j<=75;j++)
                         {
                        if(  inp[i].equals(conj[j]))
                        {
                             String newtext = oldtext.replaceAll(inp[i], ".");
                                FileWriter writer = null;   
                                 try {
                                   writer = new FileWriter(path);
                                    } catch (IOException ex) {
                                        Logger.getLogger(Toarray.class.getName()).log(Level.SEVERE, null, ex);
                                        }
                                 try {
                                     writer.write(newtext);
                                 } catch (IOException ex) {
                                     Logger.getLogger(Toarray.class.getName()).log(Level.SEVERE, null, ex);
                                 }
            }
        }
    }
}

请帮忙:)

要检查数组是否包含某些内容,请尝试以下操作:

if(Arrays.asList(inp).contains("something")){

    //Do something
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM