2014-11-20 77 views
0

我正在開發項目,我需要將第1個文本文件中每行的某些部分複製到其他文件中。在第一個文本中,每個數據由分隔符[email protected](我已經使用過)分隔。從1文本到第2個文本文件複製部分行

我想實際4個部分共3個例分離器的第一個兩個部分:

[email protected]@[email protected] 

我只是想取1日2份.IE。

[email protected] 

從第一文本文件的所有行到第二文本文件。我已經嘗試了一切,無法讓它工作。請幫我解決這個問題。 :)

+0

您有從第1或保存部分獲取文本的問題?你能在這裏通過你的代碼嗎? – 2014-11-20 18:48:01

+0

*我已經嘗試了一切*你能分享一些嗎? – A4L 2014-11-20 18:49:27

+0

我不知道如何去做。我只是試圖將每一列數據複製到不同的文件中,並繼續執行不能工作的項目(使事情變得複雜)。感謝您的答案。它認真地幫助我和A4L感謝編輯問題。(爲了重新安排它)(沒有足夠的代表投票了) – 2014-11-20 19:06:03

回答

0

我有點晚,但下面的代碼也能發揮作用:

String str = "[email protected]@[email protected]";  
String strResult = str.split("(?<!\\G\\w+)(?:[email protected])")[0]; 
System.out.println(strResult); 

\G是以前的比賽,(?<!regex)爲負回顧後。

[更新]

在你的情況,我們可以使用下面的代碼?解決方案是基於您提供的文件

import java.io.BufferedReader; 
import java.io.FileReader; 
import java.io.IOException; 

public class Test{ 
    public static void main (String[] args) throws IOException 
    { 
     BufferedReader in = new BufferedReader(new FileReader("abc.txt")); 
     String line; 
     while((line = in.readLine()) != null) 
     { 
      System.out.println(line.substring(0,line.lastIndexOf("[email protected]"))); 
     } 

     in.close(); 
    } 
} 
+0

在這裏,我只獲取字符串.ie的第一部分。只有你好。我也想StackOverflow – 2014-11-20 20:26:15

+0

不,你必須得到「你好 - @ StackOverflow」。只需複製粘貼代碼並嘗試。 – Kartic 2014-11-20 20:31:45

+0

'BufferedReader in = new BufferedReader(new FileReader(「doc。TXT「)); \t \t \t \t \t字符串線;! \t \t \t \t \t而((線= in.readLine())= NULL) \t \t \t \t \t { \t \t \t \t \t \t// String str =「Hello - @ StackOverflow - @ BMWCar - @ Bye。」; \t \t \t \t \t \t String strResult = line.split(「(?<!\\ G \\ w +)(?: - @)」)[0]; \t \t \t \t \t \t System.out.println(strResult); \t \t \t \t \t}'對不起!你的代碼正在工作,但我已經編輯它並從文件中提取。這裏只顯示你好你好 – 2014-11-20 20:45:09

0

如果你希望與破折號的名字,在我看來,用最好的事情是String.split:

String test = "[email protected]@[email protected]"; 

String[] sp = test.split("[email protected]"); 

for(String name : Arrays.copyOfRange(sp, 0, 2)) 
{ 
    System.out.println(name); 
} 
-1

首先,要獲取文本文件中的所有行,請嘗試使用while循環。當你從一個文件讀入時,輸出到第二個文件。根據條件拆分每一行。

String inLine = in.nextLine(); 
String[] parts = inLine.split("[email protected]"); 
String toWrite = parts[0] + " " + parts[1]; 
outLine.write(toWrite); 

應該很容易弄清楚。

相關問題