Re: write read string data
bH wrote:
public class GetData extends JPanel {
It doesn't look like this class "is-a" JPanel. You use no JPanel
functionality; on the contrary, all your visible output is via System.out.
Also, the intent of class names is usually clearer with a noun (DataGetter)
than a verb, which latter is good for methods.
Object[][] tempObj = new Object[5][5];
public GetData () {
Don't do major work inside a constructor.
System.out.println();
System.out.println("inside GetData");
System.out.println();
try {
FileInputStream fileIn =
new FileInputStream("C:\\myarray.data");
ObjectInputStream objInStream =
new ObjectInputStream(fileIn);
for (int ia = 0;ia<5;ia++){
for (int ib = 0;ib<5;ib++) {
tempObj[ia][ib] = objInStream.readObject();
System.out.print(tempObj[ia][ib]);
System.out.print(" ");
System.out.println();
}
}
objInStream.close();
}
catch (Exception ee) {
ee.printStackTrace();
}
}
}
One point about safety. If the readObject() call blows up, you will never
close your Streams. You should put close() calls in a finally{} block, after
the Stream is instantiated, to ensure that they really do close.
public class DataGetter
{
public void getData()
{
FileInputStream fileIn = new FileInputStream("myarray.data");
if ( fileIn == null )
{
return;
}
ObjectInputStream objIn;
try
{
objIn = new ObjectInputStream(fileIn);
}
catch( IOException ex )
{
objIn = null;
logger.log( Level.SEVERE, "Open error on object input", ex );
}
if ( objIn == null )
{
try
{
fileIn.close();
}
catch( IOException ex )
{
logger.log( Level.SEVERE, "Close error on file", ex );
}
return;
}
try
{
for (int ia = 0; ia < 5; ia++)
{
for (int ib = 0; ib < 5; ib++)
{
temp [ia] [ib] = objIn.readObject();
System.out.print( temp [ia] [ib] );
System.out.print(" ");
System.out.println();
}
}
}
catch( IOException exc )
{
logger.log( Level.SEVERE, "Processing error on object input", exc );
}
finally
{
try
{
objIn.close();
}
catch( IOException ex )
{
logger.log( Level.SEVERE, "Close error on object input", ex );
}
try
{
fileIn.close();
}
catch( IOException ex )
{
logger.log( Level.SEVERE, "Close error on file", ex );
}
}
}
}
--
Lew