色んな方法がありますが、COMを利用した例です。xmlもテキストファイルなので
ファイル名(URL)を指定すれば、OKです。
#define adTypeBinary 1
#define adSaveCreateNotExist 1
#define adSaveCreateOverWrite 2
#define CRLF "\r\n"
#define LF "\r"
#define CR "\n"
;▼mesboxを作成
ReturnHTML=""
font "MS ゴシック",14 : objmode 2
mesbox ReturnHTML,ginfo(10)-4,ginfo(11)-24,5
objectID=0 : objsel objectID
;▼URLを指定
sURL = "http://tepco-usage-api.appspot.com/latest.json"
;▼セーブする場合のファイル名 (任意)
sDest = dirinfo(0)+"\\latest.json"
;▼CharCodeを指定
charcode = "Shift_JIS"
;charcode = "UTF-8"
title sURL
newcom objXMLHTTP, "Microsoft.XMLHTTP"
objXMLHTTP->"Open" "GET", sURL, 0
objXMLHTTP->"Send"
;▼status OKならHTML等のテキストファイルを指定のCharCodeで取得
if objXMLHTTP("status") = 200 {
newcom objRS,"ADODB.Stream"
if stat!0 : dialog "ADODB.Streamがサポートされていません。",0 : end
objRS("Type") = 1
objRS->"Open"
sHtml=objXMLHTTP("ResponseBody")
objRS->"Write" sHtml
objRS("Position") = 0
objRS("Type") = 2
objRS("Charset") = charcode
ReturnHTML=objRS("ReadText")
code = CR
;▼VBScriptのRegExp(正規表現)を利用して改行コードを変換
newcom regEx, "VBScript.RegExp"
comres ReturnHTML
regEx("Pattern") = "\\r\\n|\\r|\\n"
regEx("Global") = 1
regEx->"Replace" ReturnHTML,code
regEx = 0
;▼改行コード変換後の結果をmesboxに反映
objprm objectID,ReturnHTML
;▼ファイルとして保存する場合
objRS->"Savetofile" sDest,adSaveCreateOverWrite
objRS->"Close"
}else{
dialog "接続に失敗致しました。",0,"エラー"
}
objprm objectID,ReturnHTML
if vartype(objRS)==6 {
if varuse(objRS)==1 : delcom objRS
}
delcom objXMLHTTP
stop