写了一个读入文件 处理文件中字符串的java程序
程序没有任何错误
没有抛任何异常
但是在eclipse下没有运行的结果
本身编写是会打印关于文件中的某些资料的
先开始以为是文件太大 但是在削减文件大小后仍然没有结果
望高手赐教
文件的读写及关闭都已执行了
程序没有任何错误
没有抛任何异常
但是在eclipse下没有运行的结果
本身编写是会打印关于文件中的某些资料的
先开始以为是文件太大 但是在削减文件大小后仍然没有结果
望高手赐教
文件的读写及关闭都已执行了
class Method {
private FileReader m;
public Method(String filename) {
try {
m = new FileReader(filename);
}catch(Exception e) {
System.err.println("file not found!");
}
}
public void answerreturn() {
BufferedReader infile = new BufferedReader(m);
String line;
int i = 0;
try {
while((line = infile.readLine())!=null) {
if(i % 2 == 0){
if(i!=0){
System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++;
}
if(i == 9) i =0;
}
}catch (IOException e){
System.err.println("IO Exception!");
}
try {
infile.close();
}catch (IOException e){
System.err.println("IO Exception!");
}
}// answerreturn() end
}
public class Xingshikaoshi {
public static void main(String[] args) {
String filename = "laji.txt";
Method laji = new Method(filename);
laji.answerreturn(); }}
if(i!=0){
System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++;
}
上面代码有错,要好好看看哦!
你定义了int i=0
if(i % 2 == 0)
0%2=0吧//你这句话有意义么 ,我觉得没有意义
if(i!=0)//当i不等于0的时候才进入if体里 i一直等于0 他还能进入if体了么,当然会没有结果了
if(i!=0){
System.out.println(line.length());
System.out.println(line);
int flag = line.indexOf('.');
flag = flag -1;
int location = line.lastIndexOf('"');
location = location + 11;
System.out.println(flag + "," + location);
char u = line.charAt(location);
if(u == '4'||u =='9'){
System.out.println(line.charAt(flag));
}
}
i++; //这句话位置不对
}
当i=0的时候,能够进入if(i % 2 == 0){ 里面,然后i++变成1
当i=1的时候,就不能够进入if(i % 2 == 0){ 里面了,i++就无法执行,i永远不能等于2,自然没有结果
if(i>=0){
if(i % 2 == 0){
--------
}
i++;
}