Надежное получение количества символов для файлов .doc - PullRequest
3 голосов
/ 17 февраля 2010

Какой надежный способ автоматического подсчета символов и / или слов в файле .doc или .docx?

Единственное реальное требование - это достаточно точный и достаточно надежный счет.
Требуется:работать с документами, содержащими что-то отличное от латинского алфавита, поэтому для большинства случаев достаточно подсчета символов.
Число необязательно должно совпадать с Word, но чем ближе, тем лучше.
Поскольку существует множество различных приложений,может генерировать файлы .doc, нормально ничего не подсчитывать, но этот случай должен быть отслеживаемым, поэтому мы знаем, что подсчет может быть неточным.Во всех остальных случаях, скажем, счет должен быть, по крайней мере, на 99% точным, по крайней мере, на 99% времени.

Я открыт в отношении задействованных технологий, но что-то, что может выполняться по команде * NIXлиния будет очень предпочтительным.

Есть ли разумное решение для этого?

Ответы [ 4 ]

3 голосов
/ 17 февраля 2010

Вот ссылка на некоторые преобразователи слова в текст Linux.

Например, вы можете использовать

antiword file.doc | wc

чтобы сделать подсчет.

Edit:

Эта ссылка показывает, что AbiWord имеет интерфейс командной строки, который можно использовать для преобразования формата .docx в .txt, а затем подсчитывать слова с помощью «wc». AbiWord поддерживает формат docx

1 голос
/ 17 февраля 2010

Mac OS X поддерживает чтение файлов слов, встроенных в системные платформы, так что если у вас это есть, это легко. Образец MacRuby:

NSSpellChecker.sharedSpellChecker.countWordsInString(NSAttributedString.alloc.initWithURL(fileURL, documentAttributes:nil), language:nil)

Более переносимо - хотя он и отказывается от поддержки docx - вы можете просто получить Antiword и сделать antiword | wc -w.

0 голосов
/ 17 февраля 2010

Если вы рассматриваете онлайн-приложения как решение, да, есть решение.Этот не очень красивый (с точки зрения дизайна) сайт предлагает как количество слов, так и количество символов: http://allworldphone.com/count-words-characters.htm

Я не думаю, что есть предел, и не должно быть проблемой просто скопировать / вставитьсодержимое ваших документов в соответствующую текстовую область и посмотрите результат.

Что касается точности 100% или 99%, вы можете проверить это с помощью нескольких (то есть 20-50 слов), посчитав их в первую очередь.

Надеюсь, это поможет.С уважением.Chris

0 голосов
/ 17 февраля 2010

Microsoft опубликовала спецификацию для двоичных форматов файлов Office. Анализ файла .DOC не выглядит тривиальным, но с некоторой осторожностью вы сможете получить надежный, повторяемый результат. Я понятия не имею, насколько близко это будет соответствовать тому, что показывает Word - это, вероятно, будет зависеть (хотя бы частично) от того, как вы определяете слово, например, считаете ли вы группу цифр словом или нет , Вероятно, не понадобится много времени, чтобы понять, как Word относится к таким случаям, поэтому не следует очень сложно находить близкое совпадение.

...