HTMLフォームとRebol cgiでデータを保存したい。私のフォームは次のようになります。
<form action="test.cgi" method="post" >
Input:
<input type="text" name="field"/>
<input type="submit" value="Submit" />
</form>
しかし、中国語のような Unicode 文字の場合、たとえば%E4%BA%BA
.
(これは漢字の「人」のためのものです ... Rebol バイナリリテラルとしての UTF-8 形式は#{E4BABA}
)
システムに関数はありますか、またはこれを直接デコードできる既存のライブラリはありますか? dehex
現在、このケースをカバーしていないようです。現在、次のように、パーセント記号を削除して対応するバイナリを構築することにより、これを手動でデコードしています。
data: to-string read system/ports/input
print data
;-- this prints "field=%E4%BA%BA"
k-v: parse data "="
print k-v
;-- this prints ["field" "%E4%BA%BA"]
v: append insert replace/all k-v/2 "%" "" "#{" "}"
print v
;-- This prints "#{E4BABA}" ... a string!, not binary!
;-- LOAD will help construct the corresponding binary
;-- then TO-STRING will decode that binary from UTF-8 to character codepoints
write %test.txt to-string load v