Как преобразовать байтовые данные, полученные с устройства, в читаемую человеком строку? - PullRequest
0 голосов
/ 19 апреля 2020

Я использую response-native-ble-manager для соединения моего устройства ble с моим собственным приложением реагировать. Я был подключен и получил данные от устройства в моем приложении. Это байтовый массив. Я попробовал решения ниже, но не повезло. Как мне конвертировать данные?

bleManagerEmitter.addListener('BleManagerDidUpdateValueForCharacteristic',
                ({ value, peripheral, characteristic, service }) => {

                    const data = bytesToString(value);
                    //value = 255,82,3,252,252,127,32,29,252,255
                    //data = ÿRüü üÿ (this returns non readable string)

                    let bytesView = new Uint8Array([value]);
                    // bytesView = [0]

                    const str = new TextDecoder().decode(bytesView)
                    //str = '' (no value to show here)

                    const bytes2 = new TextEncoder(
                        'windows-1252', { NONSTANDARD_allowLegacyEncoding: true })
                        .encode(str)
                    //bytes2 =  [0]
                });
...