|
|
|
BLOB & MySQL & Java2 - грабли с данными
|
|||
|---|---|---|---|
|
#18+
Доброго дня! Наступил я таки на грабли - шишак огромный и лоб болит. Даю кусок проги: code:-------------------------------------------------------------------------------- private InputStream inBlobData; private byte[] outData; inBlobData = null; inBlobData = rs.getBinaryStream("content_publ"); int aval = inBlobData.available(); System.out.println("avaliable="+aval); outData = new byte[aval]; inBlobData.read(outData,0,aval); -------------------------------------------------------------------------------- До этого был выполнен запрос SELECT и там все хоккей. Суть граблей в том, что если поле content_publ <=255 байт то я получаю правильный ответ от сервера, а вот если появляется хотя бы 1 лишний байт то в ответе мне приходит содержимое полей следующих за content_publ. Причем размер поля выщитует правильно - outData получается нужного размера. При просмотре содержимого поля с помощью визуальных средств - в поле содержиться нужная мне информация и в полном обьеме (4334 байта). В доке написано что если я буду использовать inBlobData.read() то и полочу искомые 255 байт. Но я какбы пользуюсь inBlobData.read([] byte,int,int). Поле content_publ - BLOB, если заливаю информацию 255 байт и меньше то все работает правильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2005, 18:02 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=784&tid=2151560]: |
0ms |
get settings: |
5ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
31ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
19ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 286ms |

| 0 / 0 |
