< Pnonegap NFC 판독기 응용 프로그램>Json To ByArray를 변환하는 방법과 UTF8을 지원합니까?
바이트 분석이 잘되지 않습니다.
나는 NFC 리더 애플리케이션을함으로써 NFC 태그에 기록 된 페이로드를하고 싶지만 내가 얻을
이 코드는 은밀한 할 수 있습니다 (영어 이외의 기록을 얻을 읽을 수 없습니다) 영어 만 기록 페이로드를 읽을 수 있습니다
,536,913,632 : 바이트 (. 영어가 아닌 지원하지, 전 중국 일본 타이어)
static byte[] jsonToByteArray(JSONArray json) throws JSONException
{
byte[] b = new byte[json.length()];
for (int i = 0; i < json.length(); i++) {
b[i] = (byte) json.getInt(i);
}
return b;
}
(https://github.com/chariotsolutions/phonegap-nfc/blob/master/src/android/src/com/chariotsolutions/nfc/plugin/Util.java 전체 코드)에 영어 10
영어와 영어 이외의 다른 바이트 형식을 사용하기 때문에 생각합니다.
Ex. : https://cloud.githubusercontent.com/assets/7950705/3561034/d6f90a8e-09a2-11e4-847f-3d468ccae538.jpg
이 자바 스크립트 코드가 표시되지만 내 코드에 적응하는 방법을 알지 못합니다.
var utf8 = {}
utf8.toByteArray = function(str) {
var byteArray = [];
for (var i = 0; i < str.length; i++)
if (str.charCodeAt(i) <= 0x7F)
byteArray.push(str.charCodeAt(i));
else {
var h = encodeURIComponent(str.charAt(i)).substr(1).split('%');
for (var j = 0; j < h.length; j++)
byteArray.push(parseInt(h[j], 16));
}
return byteArray;
};
utf8.parse = function(byteArray) {
var str = '';
for (var i = 0; i < byteArray.length; i++)
str += byteArray[i] <= 0x7F?
byteArray[i] === 0x25 ? "%25" : // %
String.fromCharCode(byteArray[i]) :
"%" + byteArray[i].toString(16).toUpperCase();
return decodeURIComponent(str);
};
감사합니다.
무엇을 명확히하십시오 배열은 있어야합니다. 그것은 당신이 달성하려고하는지 정말 불분명,하지만 난 당신이 제시 한 (비 들여 쓰기!) 코드가 당신을 도울 것입니다 의심 ... 그리고 그 확실히 자바 코드 아니다. 포맷 할 때'
가'탈출 '
"아닌 줄 바꿈으로 표시됩니다 –
참고. 줄 바꿈을 삽입하려면 두 줄의 공백을 사용하여 줄을 끝내고
줄 바꿈을 추가하십시오. 코드 블록은 이것을 요구하지 않습니다. – vandale