This week's book giveaway is in the OO, Patterns, UML and Refactoring forum.
We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line!
See this thread for details.
The moose likes I/O and Streams and the fly likes Binary(Little-endian) file reading problem in applet Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

JavaRanch » Java Forums » Java » I/O and Streams
Bookmark "Binary(Little-endian) file reading problem in applet" Watch "Binary(Little-endian) file reading problem in applet" New topic

Binary(Little-endian) file reading problem in applet

Rajan Manoharan

Joined: Nov 01, 2011
Posts: 2


I'm reading a STL binary file using the following code:

public void LoadSTLBinary(DataInputStream datainputstream) throws Exception { byte[80]);
int iTriaCount = readInt(datainputstream);
System.out.println("Tiangles_bitwise : " + iTriaCount);
triangles = new Triangle[iTriaCount];

//Needed since binary file is in little endian format
public int readInt(DataInputStream datainputstream) throws IOException {
int i = datainputstream.readInt();
return ((i & 0xff) << 24) + ((i & 0xff00) << 8) + ((i & 0xff0000) >> 8) + (i >> 24 & 0xff);

Note: unable to attach Sample STL binary file. please go through

When i run the code as a java application, the system.out.println outputs - "Tiangles_bitwise : 4"
but when called in a applet , the system.out.println outputs - "Tiangles_bitwise : 1146060800"

Any help highly appreciated.

Carey Brown
Ranch Hand

Joined: Nov 19, 2001
Posts: 710

For one, the DataInputStream is used to read files generated through DataOutputStream, not binary files created in any other way. Try

When I was your age I was toggling in the bootstrap code on the front panel
Rajan Manoharan

Joined: Nov 01, 2011
Posts: 2

Dear Carey,

I tried with BufferedInputStream but the problem remains the same.
i'm opening the file within applet like this:

InputStream instream = (new URL(filepath)).openConnection().getInputStream();
BufferedInputStream datainputstream = new BufferedInputStream( instream );

Note: i've a sample stl binary file but i'm not able to attach it.

Rob Spoor

Joined: Oct 27, 2005
Posts: 20077

Rajan Manoharan wrote:

I have tried that code with a simple example, and that part works. That means that if you're not getting the results you expect the problem is somewhere else. So please show us the code that's reading the STL file in both the application and the applet.

How To Ask Questions How To Answer Questions
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link:
subject: Binary(Little-endian) file reading problem in applet
It's not a secret anymore!