找回密码
 立即注册

QQ登录

只需一步,快速开始

cqtk

银牌会员

42

主题

79

帖子

2895

积分

银牌会员

积分
2895

活字格认证

cqtk
银牌会员   /  发表于:2014-5-22 15:13  /   查看:5260  /  回复:4
我在生成二维码的过程中,没有直接将内容绑定到二维码之中,而是字符串编码之后再生成了二维码(C#编码)。现在存在一个问题就是在java中怎么将扫描到的编码字符串解码到明文
编码代码如下:
string encodTag = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(tagStr)); // 编码            
                        fpSpread1.ActiveSheet.Cells[7, 6].Text =  encodTag;
具体就是说怎么在java平台上将encodTag这个变量再次转换到tagStr

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-5-22 16:25:00
沙发
回复 1楼cqtk的帖子

问题已经查收,现在进行测试,稍后反馈
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-5-22 16:45:00
板凳
回复 1楼cqtk的帖子

你好,
以下是我的测试代码:

  1.             string tagStr = "test";
  2.             string encodTag = Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(tagStr)); // 编码  

  3.             FarPoint.Win.Spread.CellType.BarCodeCellType barc = new FarPoint.Win.Spread.CellType.BarCodeCellType();
  4.             barc.BarSize.Height = "10";
  5.             barc.BarSize.Width = "10";
  6.             barc.DisplayCheckDigit = true;
  7.             barc.DisplayMode = FarPoint.Win.Spread.CellType.BarCodeDisplayMode.Image;
  8.             barc.MessageValue = "Display This Instead of Value";
  9.             barc.MinimumHeight = "80";
  10.             barc.Rotation = FarPoint.Win.Spread.CellType.BarCode.Rotation.Rotation0;
  11.             barc.Type = new FarPoint.Win.Spread.CellType.BarCode.QRCode();
  12.             fpSpread1.ActiveSheet.Columns[0].Width = 220;
  13.             fpSpread1.ActiveSheet.Rows[0].Height = 250;
  14.             fpSpread1.ActiveSheet.Cells[0, 0].CellType = barc;


  15.             fpSpread1.ActiveSheet.Cells[0, 0].Text = encodTag;
复制代码


java指的是 Android 手机扫描吗?通过 Android 手机扫描后获取的是 encodTag 值。

这应该是正常行为,可能通过扫描  Spread BarCode 无法解决这个问题,Spread 只会处理设置的 Value 或 Text 并不会记录 ToBase64String 之前的代码。

或者是我没有正确理解您的需求,欢迎继续交流。
回复 使用道具 举报
cqtk
银牌会员   /  发表于:2014-5-25 14:34:00
地板
java的确是指用android手机扫描,扫描到的encodTag值怎么转换到原有的tagstr(也就是“test”)
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-5-26 10:02:00
5#
回复 4楼cqtk的帖子

不好意思,Spread 只会处理设置的 Value 或 Text 并不会记录 ToBase64String 之前的字符,所以在控件层面上可能无法解决。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部