【问题标题】:Store a String data into my JavaCard将字符串数据存储到我的 JavaCard
【发布时间】:2014-04-24 08:25:22
【问题描述】:

我需要知道如何在我的 JavaCard 中存储字符串数据,有什么帮助吗? P.S : JavaCard 不支持 String 类型。

【问题讨论】:

  • 为什么所有的反对票?也不向新用户解释。欢迎,Achraf!

标签: java store javacard


【解决方案1】:

你可以将它表示为字节数组:

byte[] str = {'s', 't', 'r', 'i', 'n', 'g'};

这将使用每个 16 位代码点的低 8 位。这将在 ASCII 字符范围内正常工作,但不会为高于 0x7F(十进制为 127)的任何代码点生成任何特定编码。

【讨论】:

  • 感谢您的帮助:)
【解决方案2】:

Java Card 仅三种小的原始数据类型(布尔、字节、短)
它具有对 integer (int) 原始数据类型的可选支持。

字符串可以表示为字符或字节数组。
但是不支持字符(据我所知)。

因此您可以使用字节数组来表示它:

byte str[]; //creating array of byte
str = {'s' , 't' , 'a' , 'c' , 'k'}; // initializing array

我的回答与上面相同,但没有更多解释。
希望这会有所帮助。

【讨论】:

    【解决方案3】:

    Javacard 是Java 的一个很小的子集,它不支持Long、double、float 和所有包装类Char、String 多维数组动态类加载。仅支持 Boolean、byte、short Int。

    【讨论】:

    • 当心,它是booleanint。并且整数支持是可选的,并且(AFAIK)非常罕见:)
    【解决方案4】:

    从 JavaCard API v 3.0.4 开始,支持StringUtil class。但是,目前(2018 年)免费提供的卡大多不支持它(请参阅JCAlgTest page 列出对 javacardx.framework.string v1.0 的支持)

    【讨论】:

      猜你喜欢
      • 2017-07-19
      • 2011-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-23
      • 2012-10-09
      • 1970-01-01
      相关资源
      最近更新 更多