首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何支持特殊字符响应自然基数64

如何支持特殊字符响应自然基数64
EN

Stack Overflow用户
提问于 2022-10-29 07:17:42
回答 1查看 98关注 0票数 2

如何支持本机64中的特殊字符?

代码语言:javascript
运行
复制
import base from 'react-native-base64'

....
base.encode(str)
....

str将是、asd、Ğ、或来自某些语言的任何其他特殊字符。

我用过这个包https://www.npmjs.com/package/react-native-base64

当前,它在解码时将字符串转换为asd

下面是示例代码

代码语言:javascript
运行
复制
import React from "react";
import { View, Text } from "react-native";
import base from "react-native-base64";

const Decode = () => {
  const string = "asdĞ";
  const encode = base.encode(string);
  const decode = base.decode(encode);
  return (
    <View>
      <Text>{"String = " + string}</Text>
      <Text>{"DecodeS = " + decode}</Text>
    </View>
  );
};

export default Decode;

你可以在https://codesandbox.io/s/aged-currying-te3ki4?file=/src/Decode.js上试试

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-29 11:14:48

这可以通过在将encodeURIComponent编码成Base64之前使用decodeURIComponent来解决,在从Base64解码后使用对应的decodeURIComponent来解决。

encodeURIComponent()函数通过将特定字符的每个实例替换为一个、两个、三个或四个转义序列来编码URI,这些转义序列表示字符的UTF-8编码(对于由两个“代理”字符组成的字符,只能是四个转义序列)。

这个解决方案是这里提出的,我通过阅读这个答案发现页面(这个答案没有直接回答上面的问题,其中的建议解决方案对我不起作用)。建议阅读整个链接页以了解问题和可能的解决方案。

代码语言:javascript
运行
复制
import React from "react";
import { View, Text } from "react-native";
import base from "react-native-base64";

function b64EncodeUnicode(str) {
  return base.encode(encodeURIComponent(str));
}

function UnicodeDecodeB64(str) {
  return decodeURIComponent(base.decode(str));
}

const Decode = () => {
  const string = "asdĞ";
  //const encode = base.encode(string);
  const encode = b64EncodeUnicode(string);
  const decode = UnicodeDecodeB64(encode);
  return (
    <View>
      <Text>{"String = " + string}</Text>
      <Text>{"DecodeS = " + decode}</Text>
    </View>
  );
};

export default Decode;

输出是

解码示例 String = asdĞ DecodeS = asdĞ

在上面的代码中,您还可以使用标准的atob/btoa,而不是base.decode/base.encode

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74243509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档