Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вытащить текст Worda (https://javascript.ru/forum/misc/28299-vytashhit-tekst-worda.html)

PsScitalec 14.05.2012 12:32

Вытащить текст Worda
 
Хочу вытащить текст из Worda чтобы сохранить его в переменную txt и отобразить в логе.

function ImportResumeOnExecute(ActionMenuItem, Sender) {
	var FileNames = System.CreateObject('TSObjectLibrary.StringsList');
                  if ((System.PromptForFileNames(FileNames, 'Word Files(*.doc,*.docx)|*.doc;*.docx', '',	"Выберите файл", ''))) {
     	var Patch = FileNames.commatext;
		} else {
    	 return null;
    	}
  		var ResultPath = Patch.replace('\\', '\\\\');
  		Log.Write(1,'путь '+ ResultPath);

//Открытие файла Word
  	var Word = new ActiveXObject('Word.Application');
    	Word.Visible = false;
    	var Text = Word.Documents.Open(ResultPath);
    	Log.Write(1,'Документ содержит Text = '+ Text);
		var txt;
		txt = Word.Documents(ResultPath).Content;
		Word.quit(0);     
		Log.Write(1,'Документ содержит txt = '+ txt);



txt = Word.Documents(ResultPath).Content; выдает неверный путь к файлу почему не могу понять, хотя тут
var Text = Word.Documents.Open(ResultPath);
работает нормально

Только начинаю изучать JS, помогите плис.

Questioner 14.05.2012 20:01

Word.Documents(any);
Word.Documents.Open(any);
Сравните.

PsScitalec 15.05.2012 15:44

function ImportResumeOnExecute(ActionMenuItem, Sender) {
		var FileNames = System.CreateObject('TSObjectLibrary.StringsList');
         if ((System.PromptForFileNames(FileNames, 'Word Files(*.doc,*.docx)|*.doc;*.docx', '', "Выберите файл", ''))) {
         var Patch = FileNames.commatext;
         } else {
         return null;
         }
         var ResultPath = Patch.replace(/\\/g,"\\\\");
         Log.Write(1,'путь '+ ResultPath);
        try{    
                //Открытие файла Word
                 var Word = new ActiveXObject('Word.Application');
                 Word.Visible = false;
                 var Text = Word.Documents.Open(ResultPath);
                 Log.Write(1,'Документ содержит Text = '+ Text);
                 var txt = Word.Documents(Patch).Content.Text;
                 Word.quit(0);
                 Log.Write(1,'Документ содержит txt = '+ txt);
         }catch(e){
                 Word.quit(0);
         } 
         		 OpenContactResume(txt);        
}



Вот так вот работает но не вытягивает файлы у которых путь состоит из русских символов ((

PsScitalec 17.05.2012 13:06

Need help


Часовой пояс GMT +3, время: 22:29.