• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MIMEとバイナリデータの読み方)

MIMEとバイナリデータの読み方

このQ&Aのポイント
  • バイナリファイル内には、MIMEのboundary1の後にXMLヘッダーの部分があります。このXMLヘッダーをパースする方法と、バイナリファイル内のMIME boundary2の後にあるバイナリデータを読む方法について教えてください。
  • バイナリファイル内には、XMLヘッダーの部分があります。このXMLヘッダーをパースする方法と、バイナリファイル内のバイナリデータを読む方法について教えてください。
  • バイナリファイル内のXMLヘッダーとバイナリデータを読み込む方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

MIME boundaryがあるのにバイナリファイルというのがよく分かりません。メールとかで使われるMIMEのmultipart形式はテキストなので、それとは違う何かなのでしょうが。 boundaryの部分も含めて、XMLパートとバイナリパートの初めのほうだけ具体例を示すことはできませんか? > バイナリファイルを一バイトづつ読んで、Integer.toHexString()を使うとASCIIの形でXMLの部分はそのまま (フォーマットなしで)、バイナリデータの分は化けた表示されます。 もしMIME multipartであれば、各パート毎にContent-TypeとかContent-Transfer-Encodingが指定されていると思うので、それに従って読み込んでください。 XMLの解析には、DOMとかSAXとかのXML parserを使ってください。

x201s-goo
質問者

補足

salsberryさん 業務の都合で具体例は申し訳ありませんが、ご指摘の通り、テキストファイルです。 ファイル内組み込まれたバイナリデータとファイルタイプを感違えました。(汗) そのテキストファイルの中で、 --MIME_boundary-1 Content-Type: text/xml; charset="UTF-8" Content-Transfer-Encoding: 8bit 直後 (1)XML式でヘッダー情報 --MIME_boundary-2 Content-Type: application/octet-stream Content-Location: XXX.bin 直後 (2)バイナリデータ のかたちです。 疑問・質問:--MIME_boundary-2のところ、Content-Transfer-Encodingの指定がなく、 代わりにContent-Location: XXX.binがあります。「.bin」でバイナリを示していると思います。 >もしMIME multipartであれば、各パート毎にContent-Typeとか >Content-Transfer-Encodingが指定されていると思うので、 >それに従って読み込んでください。 >XMLの解析には、DOMとかSAXとかのXML parserを使ってください。 そうです。MIME multipartです。 だいぶ見えてきました。ありがとうございます。 この情報わかった上でググってみます。 もう一度、ありがとうございます。

関連するQ&A