private Map<String, Integer> indices = new HashMap<String, Integer>();\r
\r
\r
- int readBytes = 0; // tracking read data\r
- int dataMark = 0; // mark for actual data\r
+ long readBytes = 0; // tracking read data\r
+ long dataMark = 0; // mark for actual data\r
\r
IntMatrix info;\r
int[] infoData;\r
int rows = header.rows;\r
double[] v = new double[count];\r
int sc = infoData[row * 4 + 1];\r
- int c = sc > 0 ? sc-1 : -sc-1;\r
+ long c = sc > 0 ? sc-1 : -sc-1;\r
\r
\r
\r
- skip((c+start*rows) * 8, in);\r
+ skip((c+((long)start*(long)rows)) * 8L, in);\r
for (int j = 0; j < v.length; ++j) {\r
\r
double d = getDouble(in);\r
\r
\r
\r
- skip(c[0] * 8, in);\r
+ skip((long)c[0] * 8L, in);\r
for (int j = 0; j < size; ++j) {\r
for (int index = 0; index < sortedRows.size(); index++) {\r
\r
\r
\r
\r
- \r
- skip((start*rows) * 8, in);\r
+ long s = start;\r
+ s *= (long)rows;\r
+ s *= 8L;\r
+ skip(s, in);\r
skip(c[0] * 8, in);\r
for (int j = 0; j < count; ++j) {\r
for (int index = 0; index < sortedRows.size(); index++) {\r
\r
return vs;\r
}\r
- private void skip(int skipBytes, InputStream in) throws IOException {\r
- int skip = 0; \r
+ private void skip(long skipBytes, InputStream in) throws IOException {\r
+ long skip = 0; \r
while (skip < skipBytes) {\r
skip += in.skip(skipBytes-skip);\r
}\r