3

ここに私が直面している 2 つの問題があります。これらの 2 つの問題のうちの 1 つは、私のプロジェクトを機能させるために解決する必要があります。

だからここにそれらがあります:

  1. Word オートメーションや Aspose.Words などの有料 SDK を使用せずに ".doc" ファイルを読み取る方法。

    (最初のものが不可能な場合)

  2. 「.doc」ファイルを「.docx」に変換する方法は? Word 自動化や Aspose.Words などの有料 SDK を使用せずに

よく検索したところ、.docx のみのオープン ソース ソリューションが見つかりました。

これはサーバー上で実行されるため、そこには Word がインストールされていません。

4

5 に答える 5

5

この純粋な .NET ソリューションを試してみることをお勧めします。

b2xtranslator

サーバーに Office アプリケーションをインストールする必要はありません。

于 2012-06-19T17:54:54.310 に答える
3

NPOIを見てみましょう。これは .NET で書かれており、無料のオープン ソースです。ロードマップは、将来的に新しい形式の作成をサポートする予定ですが、今のところ、それを使用して古い形式を読み取り、他のソリューションを使用して新しい形式を作成することができます。これはオープン スタンダードです ( MS 仕様はこちらを参照してください)。

于 2012-06-19T12:18:42.123 に答える
2

私も同じ問題に直面しました。.doc を .docx に変換する場合は、Microsoft.Office.Interop.Word ライブラリを使用できます。わたしにはできる。これがコードです。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Word = Microsoft.Office.Interop.Word;
    using System.Reflection;
    using System.IO;


namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {

            Word._Application application = new Word.Application();
            object fileformat = Word.WdSaveFormat.wdFormatXMLDocument;
            DirectoryInfo directory = new DirectoryInfo(@"D:\abc");
            foreach (FileInfo file in directory.GetFiles("*.doc", SearchOption.AllDirectories))
            {
                if (file.Extension.ToLower() == ".doc")
                {
                    object filename = file.FullName;
                    object newfilename = file.FullName.ToLower().Replace(".doc", ".docx");
                    Word._Document document = application.Documents.Open(filename);

                    document.Convert();
                    document.SaveAs(newfilename, fileformat);
                    document.Close();
                    document = null;
                }
            }
            application.Quit();
            application = null;




        }
    }
}

それはあなたのためにも働く..

于 2015-12-06T02:56:05.397 に答える
1

OpenXML SDKオープンソースが必要な場合に使用できます。または、Interop.Word API を使用する .NET のオプションがあります。この API を使用してファイルを開き、docx として保存できます。

http://msdn.microsoft.com/de-de/library/microsoft.office.interop.word(v=office.11​​).aspx

ただし、これにはワードをマシンにインストールする必要があります。

于 2012-06-19T12:04:12.793 に答える
1

これを行う Microsoft Bulk Conversion Tool がありました。ここで参考文献を見つけました

そうでなければ、Word Automation を使用するしかないと思います。結局のところ、OpenOffice でさえ、いくつかの .doc ファイルを開いて .docx / OpenXML に変換するのに問題があります。

于 2012-06-19T12:05:20.403 に答える