Revision 44001 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.dbf/src/main/java/org/gvsig/fmap/dal/store/dbf/utils/DbaseFile.java

View differences:

DbaseFile.java
75 75

  
76 76
	private long posActual = -1;
77 77

  
78
	private int recordOffset;
78
	private long recordOffset;
79 79

  
80 80
	private ByteBuffer cachedRecord = null;
81 81

  
......
272 272
	 *
273 273
	 * @return DOCUMENT ME!
274 274
	 */
275
	public boolean getBooleanFieldValue(int rowIndex, int fieldId) {
276
		int recordOffset = (myHeader.getRecordLength() * rowIndex)
275
	public boolean getBooleanFieldValue(long rowIndex, int fieldId) {
276
		long recordOffset = (myHeader.getRecordLength() * rowIndex)
277 277
				+ myHeader.getHeaderLength() + 1;
278 278

  
279 279
		// Se calcula el offset del campo
......
301 301
	 * @return DOCUMENT ME!
302 302
	 * @throws UnsupportedEncodingException
303 303
	 */
304
	public String getStringFieldValue(int rowIndex, int fieldId)
304
	public String getStringFieldValue(long rowIndex, int fieldId)
305 305
			throws UnsupportedEncodingException {
306 306
		int fieldOffset = myHeader.getFieldDescription(fieldId).myFieldDataAddress;
307 307
		byte[] data = new byte[myHeader.getFieldLength(fieldId)];
308 308
		if (rowIndex != posActual) {
309
			recordOffset = (myHeader.getRecordLength() * rowIndex)
309
			recordOffset = ( myHeader.getRecordLength() * rowIndex)
310 310
					+ myHeader.getHeaderLength() + 1;
311 311

  
312 312
			/*
......
327 327
		return new String(data, chars);
328 328
	}
329 329

  
330
	public void setFieldValue(int rowIndex, int fieldId, Object obj) throws UnsupportedEncodingException, WriteException {
330
	public void setFieldValue(long rowIndex, int fieldId, Object obj) throws UnsupportedEncodingException, WriteException {
331 331
		try{
332 332
			int fieldOffset = myHeader.getFieldDescription(fieldId).myFieldDataAddress;
333 333
			String str = fieldString(obj, fieldId);

Also available in: Unified diff