|
|
|
SAX Parser в Java обрывает строки
|
|||
|---|---|---|---|
|
#18+
Использую в Java javax.xml.parsers.SAXParser. Почему то в некоторых местах (1 процент из ста), в метод public void characters(char [] buf, int offset, int len) передается неполная строка, непонятно с чем это связано, структура в этих местах та же. Пробую потом эти ошибочные куски из большого файла вырезать и вставить в новый, загрузка проходит нормально, ничего не меняя... Как быть, непонятный глюк какой то... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2007, 04:34:24 |
|
||
|
SAX Parser в Java обрывает строки
|
|||
|---|---|---|---|
|
#18+
Трудно сказать, что у вас за конкретная проблема, но обратите внимание на тот факт, что метод characters(char [] buf, int offset, int len) вовсе не обязан выдать Вам полный текст элемента за один присест. Если Вы ожидаете, что какой-то элемент содержит текст, Вы должны завести буфер для строки в методе startElement(...) (скорее всего это будет StringBuilder) и дописывать в него подстроку при каждом вызове characters(...). В методе endElement(... ) получаете полную строку. Это все прописано в SAX API. См., например, http://www.ibiblio.org/xml/books/xmljava, Гл. 6 - SAX, раздел "receiving Characters". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.06.2007, 07:40:32 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=59&tid=2145325]: |
0ms |
get settings: |
16ms |
get forum list: |
23ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
60ms |
get topic data: |
21ms |
get forum data: |
5ms |
get page messages: |
71ms |
get tp. blocked users: |
3ms |
| others: | 318ms |
| total: | 531ms |

| 0 / 0 |
