powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Смена кодировки файла из-под java
25 сообщений из 52, страница 1 из 3
Смена кодировки файла из-под java
    #33138985
Sender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!
Как можно сменить кодировку текстового документа из-под java, чтобы после этого при выводе(в java) содержимое осталось тем же(русским)? А то меня уже клинит!=(
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33138992
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не ясно чего именно надо? Запишите данные из файла в другой файл с новой кодировкой, а затем переименуйте из?
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33139039
Sender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Верно, в принципе. Мне для xml-файла нужно, чтобы потом вставить в субд oracle, использую кириллицу1251.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33139082
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты читаешь локально XML и кладешь его в базу? Погляди, вдруг поможет: Чтение/запись файлов через Java
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33139096
АБ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык елы-палы, если это XML то какая разница? Вся работа с XML по идее строится на том, что в заголовке файла указывается кодировка, и при считывании все автоматом переводится во внутреннее представление в UTF-8. При выводе, опять же, надо указать желаемую кодировку или по умолчанию пойдет UTF. Работать с XML как с текстовым файлом -- моветон-с.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33139108
Naug
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АБ - яву не колышет какая там кодировка указана в загаловке xml - по умолчанию она всё читает в своей дефолтовой кодировке(зависит от системы) поэтому при io файлов надо указывать кодировку в которой они находятся.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33139179
Sender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, Denis Popov, пока локально. Хорошо, посмотрю и попробую. Потом изложу. А насчет кодировки: есть xml-документы(дали мне их) с charset windows-1251(стандартная), и база с charset CLMSWIN1251. Тут мне еще другое не совсем ясно(в плане кодировок). Где-то на сайте про 1251 написано, что "я" (маленькая) с кодом 0xff, из-за нее могут быть проблемы при работе некоторых приложений из-за отсутствия 8 бита(т.е., я так понимаю,от 0 до 127, а не просто 8 бит установлен или нет). В моем случае при вставке ругается на "я". Но ведь 1251(0-255, 255-это "я") и CL8MSWIN1251 тоже байт до 255. Oracle9i(R1) ведь перекодирует символы входящие в свою кодировку. Хотя с другой стороны он их берет как 2 байта. Да, АБ, но если в utf, а затем снова в 1251, то может получится ХЪГШГИТЬА(что-то вроде этого). Например, при создании объекта String (на java) указываешь ему массив байтов и нужную кодировку(при преобразовании 1251->utf-8, например, но в этом случае будет набор вопросов).
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33140610
Winder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А pl/sql в коде java использовать можно, как, например:
executeUpdate("declare
a SYS.XMLType
...
begin
...
end")?
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33140726
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно, через CallableStatement.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33143813
Sender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слушай, Denis Popov, а в XMLType можно вставить док-т, указав его лок-ый адрес? Тоже бы очень здорово пригодилось!!
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33143816
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SenderСлушай, Denis Popov, а в XMLType можно вставить док-т, указав его лок-ый адрес? Тоже бы очень здорово пригодилось!!
А точнее: откуда, куда и чем надо загрузить в XMLType? ИМХО самое простое - положить документ в переменную типа CLOB в базе, а потом на его основе создать экземпляр XMLType - там есть соответствующий конструктор.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33145362
Sober
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
положить документ в переменную типа CLOB в базе пока еще не пробовал.(Я же Sender) Про callableStatement не знал, хотя часто попадалось на глаза. Кстати, до сих пор бьюсь над более ранней проблемой, просто пришлось ее забросить из-за нехватки времени да сил тоже. Не в тему, немного. Я насчет работы с полями LOB(CLOB). Код(начало):
Код: plaintext
1.
2.
3.
res=stmt.executeUpdate("create table test(id number not null,cdoc clob)");
res=stmt.executeUpdate("insert into test(id,cdoc) values(1,EMPTY_CLOB())");
rs=stmt.executeQuery("select cdoc from test for update nowait");
Можно сказать, делаю как по шаблону. Выдает fetch out of sequence. IntelliJidea(где я обычно программлю) выдает: выборка из последовательности.
Если без "for update nowait" то, при вставке в это поле, оно выдает, что данное поле(содержащее lob) должно быть заблокировано, но ведь ссылку получить надо.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33145451
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
 import  oracle.jdbc.OracleTypes;
 import  oracle.sql.CLOB;

 import  java.sql.*;

 public   class  ClobTest {

   private   static   final  String USERNAME = "<username>";

   private   static   final  String PASSWORD = "<password>";

   private   static   final  String SERVER = "jdbc:oracle:thin:@<host>:<port>:<SERVICE_NAME>";

   private   static   final  String RESOURCE = "ЙЦУКЕНйцукенQWERTYqwerty";

   public   static   void  main(String args [])
     throws  Exception {
    Connection con =  null ;
    Statement st =  null ;
    CallableStatement cst =  null ;
    ResultSet rs =  null ;
     try  {
      DriverManager.registerDriver( new  oracle.jdbc.OracleDriver());
      con = DriverManager.getConnection(SERVER, USERNAME, PASSWORD);
      con.setAutoCommit(false);
      st = con.createStatement();
       try  {
        st.execute("drop table test_lob");
      }  catch  (SQLException e) {}
      st.execute("create table test_lob (test_lob_id number(9), cdata clob)");
      
      // Первый способ
      CLOB clob = CLOB.createTemporary(con, true, CLOB.DURATION_SESSION);
      clob.putChars( 1 , RESOURCE.toCharArray());
      cst = con.prepareCall("insert into test_lob (test_lob_id, cdata) values (1, ?)");
      cst.setClob( 1 , clob);
      cst.execute();
      // Второй способ
      cst = con.prepareCall(
        "begin\n" +
        "  insert into test_lob (test_lob_id, cdata)\n" +
        "  values (2, empty_clob())\n" +
        "  return cdata into ?;\n" +
        "end;"
      );
      cst.registerOutParameter( 1 , OracleTypes.CLOB);
      cst.execute();
      clob = (CLOB) cst.getClob( 1 );
      clob.putChars( 1 , RESOURCE.toCharArray());
      cst = con.prepareCall("update test_lob set cdata = ? where test_lob_id = 2");
      cst.setClob( 1 , clob);
      cst.execute();
      // Проверка
      rs = st.executeQuery("select test_lob_id, cdata from test_lob");
       while  (rs.next()) {
        clob = (CLOB) rs.getClob("cdata");
        System.out.println(
          rs.getInt("test_lob_id") + " " + clob.getSubString( 1 , ( int )clob.getLength())
        );
      }
    }  finally  {
       if  (rs !=  null ) { rs.close(); }
       if  (cst !=  null ) { cst.close(); }
       if  (st !=  null ) { st.close(); }
       if  (con !=  null ) { con.close(); }
    }
  }
}
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33146934
Sober
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробовал 1 способ, получось. 2 чуть позже.
Кстати, а getlength() получается ограничен , т.е., если записать больше данных (строку из 100 символов или xml порядка kb) он выдаст не все, но спасает getchunksize(размер используемых порции данных). Тут тоже тонкость?
Кстати, не помню, после чего именно, но может после изменения кодировки файла по-умолчанию(systemdefault), а потом возврат в исходное состояние русские буквы документа, используя поток i/o стали выдаваться "?" то что на русском(в консоли java),хотя до этого было нормально. Нарушение кодировки консоли?
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33147736
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SoberПробовал 1 способ, получось. 2 чуть позже.
Кстати, а getlength() получается ограничен , т.е., если записать больше данных (строку из 100 символов или xml порядка kb) он выдаст не все, но спасает getchunksize(размер используемых порции данных). Тут тоже тонкость?

clob.getLength() возвращает long , ограничение его только в этом. В методе clob.getSubString() размерность имеет тип int , максимальное его значение может быть Integer.MAX_VALUE=2147483647. По-моему для большинства случаев хватит, тем более что в String ты все равно больше не запихнешь. Если же CLOB получился большего размера - пиши его куда-нибудь, в поток, к примеру. Читать можешь чанками, а можешь сам определить размер порции.
Sober
Кстати, не помню, после чего именно, но может после изменения кодировки файла по-умолчанию(systemdefault), а потом возврат в исходное состояние русские буквы документа, используя поток i/o стали выдаваться "?" то что на русском(в консоли java),хотя до этого было нормально. Нарушение кодировки консоли?
Поясни, приведи пример файла.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33150383
Sober
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблему с выдачей вопросов обошел, используя объект String с парамерами массив байтов и стан.кодировка win1251(перекодировка), но тот код приведу:

File inXML=new File("d:\\Dima\\oa_meteor_Planeta.xml");
InputStream inX=new FileInputStream(inXML);
inX.read(buf);int i=0;cmd="";
while (buf !=0){cmd+=(char)buf;i++};
System.out.println("XML-document:\n"+cmd);cmd=null;

Но все же выдает (содерж.clob) на 3/4:
String outs=clob.getSubString(1,(int)clob.getChunkSize());
cmd=new String(outs.getBytes(),"utf-8");
System.out.println("The field clob contains\n"+clob.getChunkSize()+"\n"+cmd);

Вот один из xml, которые в базе:

<?xml version="1.0" encoding="windows-1251"?>
<metaData xmlns="http://www.wmo.ch/www/metadata"><metadataFileIdentifier>http://cliware.meteo.ru/egfd_catalog/metadata/oa_goms_Planeta.xml</metadataFileIdentifier><metadataLanguage>ru</metadataLanguage><metadataContact><organisationName>ГУ Всероссийский НИИ гидрометеорологической информации - МЦД</organisationName><role>user</role><individualName>Хохлова Анна Владимировна</individualName><positionName>Зав. Отделом аэрологии</positionName><contactInfo><phone><voice>+7(08439)74-680</voice></phone><address><city>Королева,6 г.Обнинск</city><administrativeArea>Калужская</administrativeArea><postalCode>249035</postalCode><country>РОССИЯ</country><electronicMailAddress>anna@meteo.ru<;/electronicMailAddress></address></contactInfo></metadataContact><metadataDateStamp>2005-06-07</metadataDateStamp><metadataStandardName>WMO19115</metadataStandardName><metadataStandardVersion>0.2</metadataStandardVersion><identificationInfo><citation><resourceTitle>Государственный фонд Росгидромета. Спутниковые данные.</resourceTitle><resourceIdentifier>Монтажи спутниковых изображений (GOMS)</resourceIdentifier></citation><abstract>До 1998г. фотомонтажи спутниковых изображений из НИЦ "Планета" поступали на фотопленках. Начиная с 1998г. монтажи поступают на новых технических носителях (CD ROM). На них представлены монтажи спутниковых изображений, полученных с полярно-орбитальных или геостационарных спутников. Монтажи сопровождаются отдельными файлами, содержащими информацию о времени наблюдений.</abstract><pointOfContact><organisationName>ГУ Всероссийский НИИ гидрометеорологической информации - МЦД</organisationName><role>custodian</role><individualName>Шакирзянов Идрис Закирзянович</individualName><positionName>Начальник центра метаданных</positionName><contactInfo><phone><voice>+7(08439)74-158</voice><facsimile>+7(095)255-22-25</facsimile></phone><address><city>Королева, 6 г.Обнинск</city><administrativeArea>Калужская</administrativeArea><postalCode>249035</postalCode><country>РОССИЯ</country><electronicMailAddress>idr@meteo.ru<;/electronicMailAddress></address><onlineAddress>www.meteo.ru</onlineAddress></contactInfo></pointOfContact><resourceMaintenance><maintenanceAndUpdateFrequency>annually</maintenanceAndUpdateFrequency></resourceMaintenance><spatialRepresentationType>bitmap</spatialRepresentationType><dataCharacterSet>8859part5</dataCharacterSet><topicCategory>satelliteObservation</topicCategory><topicCategory>imageryBaseMapsEarthCover</topicCategory><descriptiveKeywords>Наблюдение</descriptiveKeywords><descriptiveKeywords>Спутник</descriptiveKeywords><referenceDate><date>1980-01-01</date><dateType>creationDate</dateType></referenceDate><dataExtent><geographicElement><geographicIdentifier>Европейская и Евроазиатская территории</geographicIdentifier></geographicElement></dataExtent><dataExtent><temporalElement><beginDateTime>1980-01-01</beginDateTime><dataFrequency>continual</dataFrequency></temporalElement></dataExtent></identificationInfo><distributionInfo><distributionFormat><formatName>jpg или raw</formatName></distributionFormat><transferOptions><offlineMedium>cdRom</offlineMedium></transferOptions></distributionInfo></metaData>

Да и почему-то "И" он преобразовывает, т.е. вместо нее "??". Т.е, например, вместо НИИ-> Н????.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33150477
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sober
Код: plaintext
1.
2.
3.
4.
5.
File inXML= new  File("d:\\Dima\\oa_meteor_Planeta.xml");
InputStream inX= new  FileInputStream(inXML);
inX.read(buf); int  i= 0 ;cmd="";
 while  (buf[i]!= 0 ){cmd+=( char )buf[i];i++};
System.out.println("XML-document:\n"+cmd);cmd= null ;

За что ты его так?:)

Sober
Код: plaintext
1.
2.
3.
String outs=clob.getSubString( 1 ,( int )clob.getChunkSize());
cmd= new  String(outs.getBytes(),"utf-8");
System.out.println("The field clob contains\n"+clob.getChunkSize()+"\n"+cmd);

Ты перепутал методы getChunkSize() и getLength() .

SoberВот один из xml, которые в базе:
сохранил я его на диске как C:/Tmp/oa_meteor_planeta.xml , в кодировке Cp1251 . А теперь кладу в базу:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
 import  oracle.sql.CLOB;

 import  java.io.*;
 import  java.sql.*;

 public   class  ClobTest {

   private   static   final  String USERNAME = "<username>";

   private   static   final  String PASSWORD = "<password>";

   private   static   final  String SERVER = "jdbc:oracle:thin:@<host>:<port>:<SERVICE_NAME>";

   public   static   void  main(String args [])
     throws  Exception {
    Connection con =  null ;
    Statement st =  null ;
    CallableStatement cst =  null ;
     try  {
      DriverManager.registerDriver( new  oracle.jdbc.OracleDriver());
      con = DriverManager.getConnection(SERVER, USERNAME, PASSWORD);
      con.setAutoCommit(false);
      st = con.createStatement();
       try  {
        st.execute("drop table test_lob");
      }  catch  (SQLException e) {}
      st.execute("create table test_lob (test_lob_id number(9), cdata clob)");
      CLOB clob = file2clob(con, "C:/Tmp/oa_meteor_planeta.xml", "Cp1251");
      cst = con.prepareCall("insert into test_lob (test_lob_id, cdata) values (1, ?)");
      cst.setClob( 1 , clob);
      cst.execute();
      con.commit();
    }  finally  {
       if  (cst !=  null ) { cst.close(); }
       if  (st !=  null ) { st.close(); }
       if  (con !=  null ) { con.close(); }
    }
  }

   public   static  CLOB file2clob(Connection con, String fileName, String characterSet)
     throws  SQLException, IOException {
    CLOB clob =  null ;
    Writer writer =  null ;
    InputStreamReader reader =  null ;
     try  {
      clob = CLOB.createTemporary(con, true, CLOB.DURATION_SESSION);
      writer = clob.getCharacterOutputStream();
      reader =  new  InputStreamReader(
         new  BufferedInputStream( new  FileInputStream( new  File(fileName))), characterSet
      );
       char [] chars =  new   char [clob.getChunkSize()];
       int  iChar;
       while  ((iChar = reader.read(chars)) != - 1 ) {
        writer.write(chars,  0 , iChar);
      }
    }  finally  {
       if  (reader !=  null ) {reader.close();}
       if  (writer !=  null ) {writer.close();}
    }
     return  clob;
  }

}
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33152735
Winder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тоже пробовал, работает!
А как изменить размер чанка? Кстати, тоже выводит не полностью!
Код: plaintext
1.
2.
3.
4.
5.
 while  (rs.next())
        {clob=(CLOB)rs.getClob( 2 );
          long  len=clob.getChunkSize();
Reader r=clob.getCharacterStream(); int  i= 1 ;
 while  (i<=len) {System.out.print(( char )r.read());i++;}
И почему, если вывести массив символов(из чтения потока ) сразу весь, то получится что-то вроде [C@1f48262?
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33152879
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinderТоже пробовал, работает!
А как изменить размер чанка?

Это переменная внутреннего представления LOB'ов в Оракле и определяется для поля в таблице. Можешь ею пользоваться, а можешь и нет. Кстати, по-моему рекомендуется оперировать несколькими чанками в записи.

http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96591/adl10pst.htm#92792

Chunksize

A chunk is one or more Oracle blocks. As noted previously, you can specify the chunk size for the LOB when creating the table that contains the LOB. This corresponds to the chunk size used by Oracle when accessing/modifying the LOB value. Part of the chunk is used to store system-related information and the rest stores the LOB value. The getchunksize function returns the amount of space used in the LOB chunk to store the LOB value.

Use a Multiple of Chunksize to Improve Write Performance.

You will improve performance if you execute write requests using a multiple of this chunk size. The reason for this is that the LOB chunk is versioned for every write operation. If all writes are done on a chunk basis, no extra or excess versioning is incurred or duplicated. If it is appropriate for your application, you should batch writes until you have enough for an entire chunk instead of issuing several LOB write calls that operate on the same LOB chunk.


Winder
Кстати, тоже выводит не полностью!

Посмотри в FAQ , там сказано как вывести CLOB в файл. В консоль аналогично:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
   public   void  printClob(CLOB clob, String characterSet)
     throws  SQLException, IOException {
    OutputStreamWriter writer =  null ;
    BufferedReader reader =  null ;
     try  {
      writer =  new  OutputStreamWriter( new  BufferedOutputStream(System.out), characterSet);
      reader =  new  BufferedReader(clob.getCharacterStream());
       int  length;
       char [] buf =  new   char [clob.getChunkSize()];
       while  ((length = reader.read(buf,  0 , clob.getChunkSize())) != - 1 ) {
        writer.write(buf,  0 , length);
      }
    }  finally  {
       if  (writer !=  null ) {writer.close();}
       if  (reader !=  null ) {reader.close();}
    }
  }

Код: plaintext
printClob(clob, "Cp1251");
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33155636
Sober
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот подумал, разбираясь с lob-ми (clob в частности),в принципе не обязательно xml-документы хранить там, можно по идее в xmltype(не помню, правда, нужны ли права на использование пакетов pl/sql ) или, используя, так называемые uritypes(http/ftp/db). Важно записать 5 док-ов(3-10 kb, один из которых я уже приводил: oa_meteor_Planeta.xml) с код-ой windows-1251 и содержащий рус-ий текст, организовать по ним поиск. Например, по части содержимого, вводимого тобой, вывести документ, который его содержит, без прав на создание процедур/функций, директорий.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33155656
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SoberВажно записать 5 док-ов(3-10 kb, один из которых я уже приводил: oa_meteor_Planeta.xml) с код-ой windows-1251 и содержащий рус-ий текст, организовать по ним поиск.
Есть такая штука как Oracle Text - одна из фичей базы, ранее входил в состав Oracle interMedia, теперь выделился оттуда. Он умеет делать контекстный поиск в том чиисле и по полям типа XMLType . Причем у нас Oracle Text используется для поиска по BLOB 'ам, в которых лежат документы любого из поддерживаемых форматов, м.б. XML тоже в их числе.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33159628
Sober
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про Oracle Text знаю. Я его вроде один раз использовал=) для пробы. А вот то, что его можно применить к blob-м, не знал. в которых лежат документы любого из поддерживаемых форматов. Это да, да и еще до 4 gb. Все-таки binary large object.
Недавно встретил error типа "End of TNS data channel". Это при попытке записать из временного clob-а в поле таблицы=) не сталкивался(Используя один приведенных шаблонов)? Я так понимаю TNS-что-то вроде прослушки(связь с oracle) (канал связи).
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33159665
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SoberНедавно встретил error типа "End of TNS data channel". Это при попытке записать из временного clob-а в поле таблицы=) не сталкивался(Используя один приведенных шаблонов)? Я так понимаю TNS-что-то вроде прослушки(связь с oracle) (канал связи).
http://download-west.oracle.com/docs/cd/B10501_01/network.920/a96580/glossary.htm#432232

Transparent Network Substrate (TNS)

A foundation technology, built into the Oracle Net foundation layer that works with any standard network transport protocol.

А что произошло - смотреть надо, alert.log на сервере, к примеру.
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33164385
Sober
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обошел-таки тот error с сообщением "fetch out of sequence". То, о чем я писал выше. Надо было уст-ть в false setautocommit(false) и далее делать выборку с блокировкой строки "select * from <table> for update". Записал в базу(clob) 5 док-ов и вытащил, сохранив их на диске и пролем с кодировкой не было. Используя,конечно, символьные потоки i/o. В основном тот же код, но без использования CLOB.createTemporary.
Какой тип индекса позоляет искать по обрывку фразы(слова/предложения)?
...
Рейтинг: 0 / 0
Смена кодировки файла из-под java
    #33164413
Фотография Denis Popov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
25 сообщений из 52, страница 1 из 3
Форумы / Java [игнор отключен] [закрыт для гостей] / Смена кодировки файла из-под java
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]