• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.net・JavaScriptエンコードについて)

VB.net・JavaScriptエンコードについて

このQ&Aのポイント
  • JavaScriptのエンコード方法や参考ページについての質問です。
  • 特定の文字列をJavaScriptの書式に変換する方法について調べています。
  • 自分で検索してもうまく結果が得られないので、アドバイスを頂きたいです。

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

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

"\u30e2\u30f3\u30b9\u30bf\u30fc" はUTF-8の文字コード(数値参照(16進数))のユニコード表記です。  30e2:モ  30f3:ン  30b9:ス  30fc:タ 参考 http://ja.wikipedia.org/wiki/Unicode%E4%B8%80%E8%A6%A7_3000-3FFF javascriptだと、  string.charCodeAt(n) で取得できます。 for(var i=0;i<4;i++){  var str+="モンスタ".charCodeAt(i) }  alert(str);    => \u30e2\u30f3\u30b9\u30bf\u30fc のはず

metal3100c
質問者

お礼

ご回答ありがとうございました!! 16進数だったのですね。 かなりのヒントになったので調べましたところ Dim data As Byte() = Encoding.Unicode.GetBytes("モンスター") にて望む表記が得られそうです。 ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.2

大きく二つの方法があります。 参考URLは半角だけそのまま出力されてますので、半角はそのまま表示する仕組みに変更してあります。 ------------------------------------------- ※UTF-16 Big Endianエンコードを利用する方法 ------------------------------------------- Function ConvJS1(ByVal in文字列 As String) As String   Dim ret As String = ""   Dim ec As System.Text.Encoding = System.Text.Encoding.BigEndianUnicode   Dim bytesData As Byte() = ec.GetBytes(in文字列)   For i As Integer = 1 To bytesData.Length Step 2     Dim byt(1) As Byte     Array.Copy(bytesData, i - 1, byt, 0, 2)     If (byt(0) = 0) Then       ret &= ec.GetString(byt)     Else       ret &= "\u" & Hex((CInt(byt(0)) << 8) Or CInt(byt(1))).ToLower()     End If   Next   Return ret End Function ------------------------------ ※AscWを利用する方法 ------------------------------ Function ConvJS2(ByVal in文字列 As String) As String   Dim ret As String = ""   For Each c As Char In in文字列.ToCharArray()     Dim s As String = c.ToString()     Dim h As Integer = AscW(s)     If (h < &HFF) Then       ret &= s     Else       ret &= "\u" & Hex(h).ToLower()     End If   Next   Return ret End Function

metal3100c
質問者

お礼

ご回答ありがとうございました!! タッチの差で1050YENさんのご回答を確認する前に、 最初に回答いただいたyyr446さんへベストアンサーとさせていただきましたが VBのコードもご提示いただき、当方としては実質ベストアンサーです!! お陰さまで、問題は解決しそうです。 ありがとうございました!!

すると、全ての回答が全文表示されます。
MFC-J6583CDWがスキャン不能に!
このQ&Aのポイント
  • ブラザー製のMFC-J6583CDWがスキャンできなくなった問題について。
  • ユーザーはWindows11を使用し、無線LANで接続している。
  • ひかり回線を利用しているが、エラーが発生しスキャン機能に支障がある。
回答を見る

専門家に質問してみよう