c# - 有没有办法用 .net framework 4.0 在 C# 中缩短字符串长度?
问题描述
我正在尝试创建一个 22x22 数据矩阵。每个位置的最大长度为 43 个字母数字字符。
我有一个长度为 60 的 url 字符串。有没有办法将字符串编码为另一个较短的字符串以减少它的长度,使其符合 43 个字符的限制?
我不能使用网址缩短器,因为该应用程序设计为在没有互联网的情况下工作。将字符串输入数据库并获取引用它的短 id 也不是一个选项。
我尝试了 base64 和十六进制编码,但它们返回的字符串比初始字符串长。有任何想法吗?
更新:(尝试更好地解释问题)
问题是因为我将数据矩阵的大小限制为 22x22(43 个字母数字字符,55 个数字),如果我添加更多不适合打印设计的保留大小。我有一个生成数据矩阵的本地应用程序,它需要在没有互联网的情况下工作(在某些日期下载服务器信息)并打印数据矩阵。当 qr 阅读器应用程序读取数据矩阵中的 url 时,服务器将响应。
解决方案
字符串中的字符只是字节,一个字符可以用 8 位到 32 位(或理论上更长)表示。您应该使用字节而不是字符串。
推荐阅读
- android - RecyclerView 在嵌套片段中不滚动
- html - 具有 srcset 的不同大小的图像在看似随机的断点处加载图像
- jquery - jQuery获取动态创建的多个(> 300)单选按钮的值
- firebase - Firebase 动态链接 CORS - XMLHttpRequest
- prolog - 为什么这些规则有效?(在序言中查找列表中的最后一个元素)
- mysql - 如何从数据库中获取每 n 个数据
- python - python - 从字符串中替换切片
- python - Flask:在页面之间传递对象
- visual-studio-code - VS Code 更新将不起作用
- c++ - 父类使用子方法