Java 尝试将分隔的txt文件扫描到字符串数组中
我试图读取一个以制表符分隔的txt文件,并将数据放入字符串数组的两列中Java 尝试将分隔的txt文件扫描到字符串数组中,java,java.util.scanner,Java,Java.util.scanner,我试图读取一个以制表符分隔的txt文件,并将数据放入字符串数组的两列中 package mailsender; import java.io.*; import java.util.Scanner; public class MailSenderList { static String address=null; static String name=null; static String[][] mailer; // @SuppressWarnings("e
package mailsender;
import java.io.*;
import java.util.Scanner;
public class MailSenderList {
static String address=null;
static String name=null;
static String[][] mailer;
// @SuppressWarnings("empty-statement")
public static void main(String[] args) throws IOException {
try {
Scanner s = new Scanner(new BufferedReader(new FileReader("/home/fotis/Documents/MailRecipients.txt"),'\t')); //This is the path and the name of my file
for(int i=0;i>=30;i++){
for(int j=0;j>=2;j++){
if (s.hasNext());{
mailer[i][j]=s.next(); //here i am trying to put 1st+2 word into first column and 2nd+2 into second column.
}
}
}
for(int ii=0;ii>=30;ii++){
System.out.println("Line : ");
for(int ji=0;ji>=2;ji++){
System.out.print(" " + mailer[ii][ji]);
//trying to print and check the array
}
}
}
catch (java.io.FileNotFoundException e) {
System.out.println("Error opening file, ending program");
//System.exit(1);}
}
}
class mail{
mail(){
}
}
}
文件成功生成,但在
System.out.中没有结果。在
调试器中,它似乎从未从第一个for
循环中通过。您可能在import java.io.File;
import java.util.Scanner;
public class ReadFile {
public static void main(String[] args) {
try {
File file = new File("/home/fotis/Documents/Mailers.txt"); //this a the path there
try (Scanner input = new Scanner(file).useDelimiter("\\t")) {
String line[] = new String[150000];
int i=0;
while (input.hasNextLine()) {
line[i] = input.next();
System.out.println(line[i]);
i++;
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
代码将永远不会输入任何一个for循环。你说的是i=0,虽然i大于或等于30,但它不是,所以它会退出循环。是的,这更有效。但你最初的问题是,你混淆了大于和小于。