MemoryStream
から直接ファイルを開いて、ディスクに書き込むのではなく、Process.Start()
を開くことはできますか?特にPDFファイルですか?そうでなければ、MemoryStream
をディスクに書き込む必要があると思います(これは厄介なものです)。誰かがディスクにMemoryStream
を書き込む方法について私にリソースを教えてもらえますか?メモリストリームからファイルを開く方法
答えて
クライアントによって異なります。クライアントが標準入力からの入力を受け入れる場合は、をクライアントにプッシュします。もう1つの可能性は、名前付きパイプサーバーまたはソケットサーバーを書くことです(簡単なことではありませんが、うまくいく可能性があります)。
ただし、最も簡単なオプションは、一時ファイルを取得してそれに書き込むことです(あとで削除してください)。
var file = Path.GetTempFileName();
using(var fileStream = File.OpenWrite(file))
{
var buffer = memStream.GetBuffer();
fileStream.Write(buffer, 0, (int)memStream.Length);
}
完了したら、ファイルをクリーンアップしてください。
またはWriteToを使用してください(4.0以外の場合) – Magnus
@Magnus - 削除しました。私はMemoryStreamからバックバッファを使用できることに気づいた –
ファイルを開くことによって、Adobe ReaderをPDFファイルとして起動する場合は、ファイルに書き込む必要があります。つまり、アプリケーションがあなたにいくつかのAPIを提供しない限り、そうします。ファイルへのストリームを書き込むための
一つの方法は、次のようになります。
using (var memoryStream = /* create the memory stream */)
using (var fileStream = File.OpenWrite(fileName))
{
memoryStream.WriteTo(fileStream);
}
Path.GetTempFileName()「の.tmp」拡張子を持つファイル名を返し、したがって、あなたが必要とするProcess.Start()を使用cant't拡張子を使ったWindowsファイルの関連付け。
- 1. サーバディレクトリからファイルを開く方法は?
- 2. SharpointからExcelファイルを開く方法
- 3. メモリストリームからのZipファイルの作成C#
- 4. Delphi7から.batファイル(RandomApp.exeを開くなど)を正しく開く方法は?
- 5. ファイルからpythonでファイルを開く方法
- 6. 他のmxmlファイルからmxmlファイルを開く方法は?
- 7. 起動時にrunniingするファイルからファイルを開く方法
- 8. Webフォームから開くファイルを開く
- 9. .bundleファイルを開く方法
- 10. ファイルを開く方法
- 11. .FICファイルを開く方法?
- 12. ファイルを開く方法
- 13. apkファイルを開く方法
- 14. .diaryファイルを開く方法
- 15. mysqld.logファイルを開く方法
- 16. メモリストリームからビデオファイルを再生
- 17. ファイルへのgzipstreamメモリストリーム
- 18. メールからファイルを開く
- 19. プレイブックアプリからファイルを開く
- 20. ファイル内のファイルを開く方法は?
- 21. 添付ファイルをInfoPathフォームから直接開く方法は?
- 22. ファイルエクスプローラの「開く」オプションからファイルを読み取る方法は?
- 23. 私のウェブビューアプリからサファリの.pdfファイルを開く方法
- 24. 指定したプログラムでコマンドラインからファイルを開く方法は?
- 25. Borland C++アプリケーションからHTMLHelp(.chm)ファイルを開く方法
- 26. ブラウザから添付ファイル付きのメールを開く方法
- 27. FZFから特定のアプリケーションでファイルを開く方法
- 28. C++ Windowsメモリからファイルを開く方法
- 29. クラスファイルからXAMLファイルを開く方法は?
- 30. Mac OSXのコマンドラインからSublime3でファイルを開く方法
(James - 私は私の答えから4.0の依存関係を削除しました) –