我需要一种方法来将.doc或.docx扩展名转换为.txt,而无需安装任何内容.我也不想手动打开Word这样做显然.只要它在汽车上运行.
我认为Perl或VBA都可以做到这一点,但是我也找不到任何在线的东西.
有什么建议么?
解决方法
请注意,Microsoft Office应用程序的一个很好的信息来源是对象浏览器.您可以通过工具→宏→Visual Basic编辑器访问它.在编辑器中,点击F2浏览Microsoft Office应用程序提供的接口,方法和属性.
以下是使用Win32::OLE的示例:
#!/usr/bin/perl use strict; use warnings; use File::Spec::Functions qw( catfile ); use Win32::OLE; use Win32::OLE::Const 'Microsoft Word'; $Win32::OLE::Warn = 3; my $word = get_word(); $word->{Visible} = 0; my $doc = $word->{Documents}->Open(catfile $ENV{TEMP},'test.docx'); $doc->SaveAs( catfile($ENV{TEMP},'test.txt'),wdFormatTextLineBreaks ); $doc->Close(0); sub get_word { my $word; eval { $word = Win32::OLE->GetActiveObject('Word.Application'); }; die "$@\n" if $@; unless(defined $word) { $word = Win32::OLE->new('Word.Application',sub { $_[0]->Quit }) or die "Oops,cannot start Word: ",Win32::OLE->LastError,"\n"; } return $word; } __END__