Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.30;
Скачать: CL | DM;

Вниз

Сохранение Word   Найти похожие ветки 

 
BAYES ©   (2005-01-17 21:59) [0]

Привет.
У меня такой не скромный вопрос. У меня имеется около 100 word-документов они по глупой случайности были переименованы в формат file_n где n 1-97.
Я пытаюсь переименовать файлы по первым 25 знакам из документа

Делаю так


a:=0;
b:=25;
WordDocument1.Range(a, b).Text;

FileNameSave:= WordDocument1.Range(a, b).Text;
WordDocument1.SaveAs(FileNameSave);
...
Но возникает проблема, в первых 25 знаках встречают символы которые не могут быть сохранены.
У меня вопрос, как эти символы отсечь, какими способами?
Спасибо за все ответы.


 
YurikGL ©   (2005-01-17 22:09) [1]


> Но возникает проблема, в первых 25 знаках встречают символы
> которые не могут быть сохранены.
> У меня вопрос, как эти символы отсечь, какими способами?

Что-то типа такого:
st:string;

st:= WordDocument1.Range(a, b).Text;

for i:=1 to length (st) do
 if not (st[i] in[набор допустимых символов]) then st[i]:=" "

WordDocument1.SaveAs(st);


 
BAYES ©   (2005-01-17 22:22) [2]

"набор допустимых символов" в каком формате нужно предоставлять?
А-Я или а,б,в,г


 
YurikGL ©   (2005-01-17 22:33) [3]

Попробуй

> BAYES ©   (17.01.05 22:22) [2]

["A".."Z","a".."z","0".."1","А".."Я" и т.д.]

А вообще, про множества почитай.


 
BAYES ©   (2005-01-17 22:56) [4]

Все отлично порезало, пасиба Юра, но блин, что-то не то, реально организовать что-то на подобии «сохранения По-умолчанию», например когда word новый документ при сохранении дает имя первых N-символов.


 
YurikGL ©   (2005-01-17 23:03) [5]


>  например когда word новый документ при сохранении дает
> имя первых N-символов.

А что тебе мешает считать первые n символов, далее, если среди первых 5-6-ти нет недопустимых символов, в качестве имени использовать строку до либо до первого недопустимого символа, либо n символов?


 
BAYES ©   (2005-01-18 10:54) [6]

Пол ночи просидел, что только не пробовал, получается всякая хрень. Подкинь кусок кода.


 
YurikGL ©   (2005-01-18 21:07) [7]

Что-то типа такого

st:="";
i:=1;
while ((i<60) and (char(WordApplication1.ActiveDocument.Characters.Item(i).Text[1]) in ["a".."z","A".."Z"])) do begin
st:=st+(WordApplication1.ActiveDocument.Characters.Item(i).Text[1]);
inc(i);
                                                      end;
if length(st)=0 then st:="Документ1"
Правда с русскими буквами глюкает при преобразовании wideChar в char...


 
BAYES ©   (2005-01-19 18:58) [8]

Вот я морочился, сам ворд в свойствай файла сохраняет заголовок, (автор,тема...) прям то, что нужно, осталось выяснить как это считать.
Юра пасиба за потраченное время.



Страницы: 1 вся ветка

Текущий архив: 2005.10.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.03 c
14-1128920739
ilya39
2005-10-10 09:05
2005.10.30
Visual Studio Beta 2


1-1127758387
NikNet
2005-09-26 22:13
2005.10.30
Где скачать хороший бесплатный компонент для СКИН?


5-1105980217
slart
2005-01-17 19:43
2005.10.30
Прорисовка "детей"


14-1128840322
Старшеклассник
2005-10-09 10:45
2005.10.30
Расчет IP адресов в локальных сетях


9-1113983455
Asdi
2005-04-20 11:50
2005.10.30
Отзовитесь те кто хоть раз делал музыку к играм !!!