Base64Binaryの生データがあります。
string base64BinaryStr = "J9JbWFnZ......"
どうすればPDFファイルを作成できますか?変換が必要だと思います。私を助けてください。
ステップ1は、base64文字列からバイト配列への変換です。
byte[] bytes = Convert.FromBase64String(base64BinaryStr);
ステップ2は、バイト配列をディスクに保存することです。
System.IO.FileStream stream =
new FileStream(@"C:\file.pdf", FileMode.CreateNew);
System.IO.BinaryWriter writer =
new BinaryWriter(stream);
writer.Write(bytes, 0, bytes.Length);
writer.Close();
using (System.IO.FileStream stream = System.IO.File.Create("c:\\temp\\file.pdf"))
{
System.Byte[] byteArray = System.Convert.FromBase64String(base64BinaryStr);
stream.Write(byteArray, 0, byteArray.Length);
}
base64Binary文字列-WebサービスからSOAPメッセージ
byte[] bytes = Convert.FromBase64String(base64BinaryStr);
このコードは、ハードドライブにファイルを書き込みません。
Response.AddHeader("Content-Type", "application/pdf");
Response.AddHeader("Content-Length", base64Result.Length.ToString());
Response.AddHeader("Content-Disposition", "inline;");
Response.AddHeader("Cache-Control", "private, max-age=0, must-revalidate");
Response.AddHeader("Pragma", "public");
Response.BinaryWrite(Convert.FromBase64String(base64Result));
注:変数base64Result
にはBase64文字列が含まれます: "JVBERi0xLjMgCiXi48/TIAoxI ..."
あなたがする必要があるのは、データを文字列として受け取り、バイトの配列を返すBase64デコーダーを介して実行することです。次に、ファイル名にpdfを付けてそのファイルを書き出すだけです。または、これをブラウザにストリーミングして戻す場合は、出力ストリームにバイトを書き込んで、ヘッダーに適切なmime-typeをマークします。
ほとんどの言語には、Base64との間で変換するためのメソッドが組み込まれています。または、特定の言語を使用した単純なGoogleは、使用できる多数の実装を返します。 Base64に行き来するプロセスはかなり簡単で、初心者の開発者でも実装できます。
まず、Bas64文字列をbyte []に変換し、ファイルに書き込みます。
byte[] bytes = Convert.FromBase64String(base64BinaryStr);
File.WriteAllBytes(@"FolderPath\pdfFileName.pdf", bytes );