powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / как работать с таблицей в файле Word
7 сообщений из 7, страница 1 из 1
как работать с таблицей в файле Word
    #34602038
Кореец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброе время суток!
Кому нибудь приходилось работать с таблицами находящимися в файле Word? Требуют импортировать данные из документов. Данные оформлены в виде таблиц в файлах Word. Была бы удобна возможность обращаться к конкретным ячейкам в таблицах и вставлять данные из них в соответствующие поля таблицы БД.

Есть несколько вопросов:
1. С помощью какой технологии удобнее работать с Word документами?
2. Как получить доступ к определенной таблице в файле (если таблиц в одном файле несколько)?
3. Как передвигаться по столбцам и строкам таблицы?

С Уважением.
На данный момент пробовал работать с jawin и Poi. С первым пакетом получится пример для екселя, вроде все понятно, но у меня нет описания подобных команд OLE для Word. Для Poi тоже ни одного подходящего к моему случаю примера не нашел..так..просто файл прочитал из потока и все..
...
Рейтинг: 0 / 0
как работать с таблицей в файле Word
    #34602146
Кореец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну может у кого нибудь есть описание методов для Word?
Наподобие "Range", "Select" и т.д. для Excel
...
Рейтинг: 0 / 0
как работать с таблицей в файле Word
    #34603138
kadet
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я сталкивался с этим гемороем.
посмотри структуру мелкософтовского ворда. он кажется был очень сильно похож на xml. Так вот я конвертировал его xml, после этого уже вытаскивал нужную инфрмацию. В обратную сторону конвертировать не стал. Это вредно для здоровья. Фактически я вырабатывал результат опять же в форме хмл, а потом доводил до нужного внешнего вида (того же ворда) при помощи фоп. Получилось очень выразительно и в дальнейшем такие документы легко обрабатывались.
...
Рейтинг: 0 / 0
как работать с таблицей в файле Word
    #34607945
Кореец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если сохранить в формате html, то с тэгами можно работать достаточно комфортно. При этом формат известный и с таблицами все понятно.
Один вопрос осталось решить..КАК задать формат файла при сохранении SaveAs(используем jawin).
В скрипте VBA Word делает это так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Sub Макрос7()
    ChangeFileOpenDirectory _
        "C:\"
    ActiveDocument.SaveAs FileName:= _
        "Hello.doc", _
        FileFormat:=wdFormatHTML, LockComments:=False, Password:="", _
        AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
        EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
        :=False, SaveAsAOCELetter:=False
    ActiveWindow.View.Type = wdWebView
End Sub

Как задать этот FileFormat:=wdFormatHTML ?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
	 private   void  importWord_Ole(String path){
		 try {
			Ole32.CoInitialize();
			app= new  DispatchPtr("Word.Application");
			app.put("Visible", true);
			DispatchPtr documents = (DispatchPtr) app.get("Documents");
			DispatchPtr doc = (DispatchPtr) documents.invoke("Open",path);

			//doc.put("FileFormat","wdFormatHTML");
			//doc.invoke("SaveAs","wdFormatHTML","c:\\111.html");
			//doc.invoke("SaveAs","wdFormatHTML","c:\\111.html");
			
			
			app.invoke("Quit");	
			
			
			
			Ole32.CoUninitialize();
			
		} catch (Exception er){
			GlobalObject.errShow(er, "importExcel_Ole",  null );
		}	
	}	
Через что мне задать этот параметр, через метод PUT? Влобовую неполучилось....
...
Рейтинг: 0 / 0
как работать с таблицей в файле Word
    #34608198
LongS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может это поможет.

В Object Brawser для word:

Const wdFormatHTML = 8
Member of Word.WdSaveFormat
...
Рейтинг: 0 / 0
как работать с таблицей в файле Word
    #34608328
Кореец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LongSМожет это поможет.

В Object Brawser для word:

Const wdFormatHTML = 8
Member of Word.WdSaveFormat

ты совершенно прав!
wdFormatHTML это ж дейсвительно целая константа, а не строковый параметр.
и в итоге вот так сработало:

doc.invoke("SaveAs","c:\\333.html",8);
...
Рейтинг: 0 / 0
как работать с таблицей в файле Word
    #34608343
Кореец
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
рабочий вариант конвертации doc файла в html используя вызов Word через COM:
Код: 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.
	 private   void  importWord_Ole(String path){
		 try {
			Ole32.CoInitialize();
			app= new  DispatchPtr("Word.Application");
			app.put("Visible", true);
			DispatchPtr documents = (DispatchPtr) app.get("Documents");
			DispatchPtr doc = (DispatchPtr) documents.invoke("Open",path);

			doc.invoke("SaveAs","c:\\333.html", 8 );
			
			
			doc.close();			
			app.invoke("Quit");
			app.close();		
			
	
			
			
			Ole32.CoUninitialize();
			
		} catch (Exception er){
			GlobalObject.errShow(er, "importExcel_Ole",  null );
		}	
	}	
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / как работать с таблицей в файле Word
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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