0

doc、docx ファイルを C# で .NET に読み込む方法。

4

5 に答える 5

3

asp.netタグを使っているのがわかります。オートメーション API (COM Interop) を使用して、ASP.NET またはその他のサーバー アプリケーションから Microsoft Office 製品を実行しないでください。Office 製品は、ユーザー インターフェイスを使用してデスクトップから実行できるように作られています。これらはサーバー シナリオでは正しく機能せず、さらにライセンスの問題もあります。

代わりに、 Aspose.Words for .NETまたはその他の同様のテクノロジを使用してください。サーバー環境で使用するように設計されています。

于 2010-01-30T11:54:00.940 に答える
1

RichTextBox.LoadRichTextBox コントロールを使用して、メソッドを使用して .rtf および .doc ファイルを読み取ることができます。

于 2010-01-30T11:19:36.880 に答える
1

Aspose.Words for .NETは、まさにこれを可能にする商用ライブラリです。ウェブサイトから:

Aspose.Words for .NET を使用すると、開発者は DOC、OOXML、RTF、WordprocessingML、HTML、MHTML、TXT、および OpenDocument ドキュメントを簡単に開いて保存できます。

于 2010-01-30T10:01:02.090 に答える
1

通常、COM 相互運用機能は、オフィス ドキュメントとのインターフェイスに使用されます。

Excel ファイルの作成に関する MSDN の例を次に示します。

http://msdn.microsoft.com/en-us/library/ms173186(VS.80).aspx

また、Visual Studio 2010 と .net 4.0 には、オフィスとの相互運用に役立つ、より動的な言語機能が含まれます。詳しくは、こちらをご覧ください。

http://blogs.msdn.com/samng/archive/2009/06/16/com-interop-in-c-4-0.aspx

そして、ここにビデオがあります

http://msdn.microsoft.com/en-us/vcsharp/ee460939.aspx

于 2010-01-30T10:43:57.507 に答える
0

Microsoft は、.NET でさまざまな Office ファイル形式とやり取りするための相互運用アセンブリの無料セットを提供しています。ダウンロード場所は、使用している Office のバージョンによって異なりますが、「Microsoft Office Primary Interop Assemblies」を Google 検索すると、次のリンクが表示されます。Office 2007 用のこのような MSDN のさまざまなバージョン。

これらの相互運用機能を使用して Word ドキュメント (doc または docx) を開く方法については、次のスニペットは Word ドキュメントを開く方法を示しています。

_Application WordApp = new Microsoft.Office.Interop.Word.Application();

  object WordFile = "C:\\SomeDoc.doc";
  object RdOnly = false;
  object Visible = true;
  object Missing = System.Reflection.Missing.Value;
  Document Doc = WordApp.Documents.Open(ref WordFile, ref Missing, ref RdOnly, ref Missing, ref Missing, 
                                        ref Missing, ref Missing, ref Missing, ref Missing, ref Missing, 
                                        ref Missing, ref Visible, ref Missing, ref Missing, ref Missing, 
                                        ref Missing);

そこから、Doc を使用してドキュメントのさまざまな部分にアクセスできます。

于 2010-01-30T10:47:25.240 に答える