VB.net2003でDataSet内のデータをXMLとして出力します。
そしてさらにこのXMLを暗号化してからファイルに出力するという事をしています。
DataSetのXMLでの出力は
DataSet.WriteXml(StreamWriter)
暗号化にはSystem.Security.Cryptographyを使用して実現しています。
この時に一度XMLファイルが生成されてそれを暗号化の処理で読み込んで
暗号化してファイル出力しているのですが、
このXMLファイルを生成せずに内部で情報を暗号化の処理に渡す方法にしたいのですが、XMLファイルを内部に保持する方法、また暗号化の処理に渡す方法がわかりません。
どなたかおわかりになる方いらっしゃいましたらお願いします。
ファイルベースのストリームではなく、メモリベースのストリームを
使用できませんか? たとえば、System.IO.MemoryStream とか…。
FileStream 作成
CryptoStream を書き込みモードで FileStream から作成
(StreamWriter を CryptoStream から作成/オプション)
WriteXml で CryptoStream または StreamWriter に書き込み
で良い様な。
メモリーベースのSystem.IO.MemoryStreamを作成。
MemoryStreamからStreamWriterを作成してXMLを書き込み、
MemoryStreamの内容を暗号化してファイルに書き出しすることでできました。
魔界の仮面弁士様、Hongliang様ありがとうございました。
ツイート | ![]() |