我這裏有:JAVA:在文件中搜索字符串/關鍵字,並添加包含搜索字符串/關鍵字在一個ArrayList行
String Path = "C:\\Ian\\sample\\install.info"
List<String> BatchList = new ArrayList<String>();
List<String> installList = new ArrayList<String>();
List<String> uninstallList = new ArrayList<String>();
Scanner scanner = new Scanner(Path);
String myLine;
int i = 0;
while((myLine = scanner.next()) != null)
{
if(myLine.indexOf("C:\\Batch") == 0)
{
BatchList.add(myLine);
}
if(myLine.indexOf("C:\\install") == 0)
{
installList.add(myLine);
}
if(myLine.indexOf("C:\\uninstall") == 0)
{
uninstallList.add(myLine);
}
i++;
}
這裏是install.info
[BatchFiles]
C:\Batch\Batch1.jar
C:\Batch\Batch2.jar
C:\Batch\Batch3.jar
C:\Batch\Batch4.jar
[INSTALL]
C:\install\sql1.sql
C:\install\sql2.sql
C:\install\sql3.sql
C:\install\sql4.sql
[UNINSTALL]
C:\uninstall\sql1.sql
C:\uninstall\sql2.sql
C:\uninstall\sql3.sql
C:\uninstall\sql4.sql
內容
是否有任何想法或任何方式讓我得到由我的關鍵字組成的行,並將其放入ArrayLists中?
所需的輸出
BatchList應包括:
C:\install\Batch1.jar
C:\install\Batch2.jar
C:\install\Batch3.jar
C:\install\Batch4.jar
installList應包括:
C:\install\sql1.sql
C:\install\sql2.sql
C:\install\sql3.sql
C:\install\sql4.sql
聯合國installList應該包括::
C:\uninstall\sql1.sql
C:\uninstall\sql2.sql
C:\uninstall\sql3.sql
C:\uninstall\sql4.sql
= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -
UPDATE
List<String> batchList = new ArrayList<String>();
List<String> installList = new ArrayList<String>();
List<String> uninstallList = new ArrayList<String>();
Scanner scanner = new Scanner(Path);
String myLine;
int i = 0;
while (scanner != null && scanner.hasNext()) {
if ((myLine = scanner.next()) != null) {
if (myLine.indexOf("C:\\Batch") == 0) {
batchList.add(myLine);
}
if (myLine.indexOf("C:\\install") == 0) {
installList.add(myLine);
}
if (myLine.indexOf("C:\\uninstall") == 0) {
uninstallList.add(myLine);
}
i++;
}
}
if (scanner != null) {
scanner.close(); // Closing scanner
}
String[] BatchPath = batchList.toArray(new String[0]);
String[] SQLinsPath = installList.toArray(new String[0]);
String[] SQLuninsPath = uninstallList.toArray(new String[0]);
for (String k : BatchPath)
{
System.out.println(k);
}
for (String k : SQLinsPath)
{
System.out.println(k);
}
for (String k : SQLuninsPath)
{
System.out.println(k);
}
而且還告訴我們,你得到什麼輸出。你有沒有嘗試調試你的代碼? – 2014-12-04 04:44:49
是的,這說明不了什麼 – 2014-12-04 05:21:27