bilsch wrote:
I wrote a loop that reads a text file (NVRAM.TXT) and stores it in a big
character array and prints it out. It works fine. Just for the heck of
it I tried to break it into two files: one that does the reading and the
creation of the array, and another (with main) that prints out the first
Files don't do reading and printing.
Programs do.
10 characters of the array. It doesn't work. There's something wrong
with how I reference the array in the main program. The two files are
shown below, along with the error message that is generated. The
statement causing the error is:
System.out.print(bstr.nvchr[n]);
Please tell me how to make it work (if possible). Here are the two files:
public class NvrWork {
public static void main(String[] args) {
int n;
BigString bstr = new BigString();
As Stefan told you, 'bstr' is a local variable. Look up "local variable". Its scope is limited to the 'main()' method of the 'NvrWork' class and is not accessible to another class. Look up "access" as it applies to Java variables, methods and members.
for (n = 1; n< 10; n++) {
System.out.print(bstr.nvchr[n]);
'nvchr' is not a member variable of the 'BigString' type, much less an accessible one.
Read the Java tutorials.
}
}
}
public class BigString {
public BigString() {
int fin = 1;
int count = 1;
try {
FileInputStream file = new FileInputStream("NVRAM.TXT");
Don't do all the work in the constructor. The constructor should only construct, not perform the major work.
char[] nvchr = new char [30000];
while (fin != -1) {
fin = file.read();
nvchr[count] = (char) fin;
//System.out.print(nvchr[count]);
count++;
}
System.out.println("Bytes read : " + count);
file.close();
} catch (IOException e){
System.out.println("Could not read file");
}
}
}
OUTPUT:
run:
Bytes read : 26017
Exception in thread "main" java.lang.RuntimeException: Uncompilable
source code - Erroneous tree type:<any>
at NvrWork.main(NvrWork.java:9)
Java Result: 1
BUILD SUCCESSFUL (total time: 3 seconds)
You need to read the Java tutorials.
Thank you. I'm not sure where the tutorials are. Do you have a link?
TIA. Bill S.