简单的ASCII编码Q w / Java

时间:2012-02-09 22:56:06

标签: java

我对以下内容有一个设计理念...在一个玩纸牌/益智游戏的应用程序中,要做的一件事就是保存/加载从磁盘播放的游戏......我还想提供已保存的游戏将游戏Applet作为args进行游戏,它会以这种方式加载。有一个交易代码(它洗牌),在36号基础上,在一个已保存的游戏中,我有两个其他数据结构,包括布尔和小整数 - 小于36 - 所有数据都可以作为基数36的数字,或者使用只有一个字母和数字的例子,以及一些标点字符作为混合中的分隔符。

在这种情况下,我不知道我在跨平台ASCII中遇到了什么,但是我想用一组大约40个ASCII字符为已保存的游戏编写和读取ASCII字符串。我希望能够将相同的字符串粘贴到Web编辑器中,因为arg传递到applet中。

所以它的长短是......我想知道我必须做些什么来处理这个编码,所以这是一个很好的,有效的跨平台功能(如上所述)?

TIA - Mark

2 个答案:

答案 0 :(得分:2)

如果用户正在使用cut&粘贴,然后我会使用base 64,因为它是一个简单的字符串,不太可能有这个数据输入方法的麻烦。如果它们是TYPING,那么我会使用base 26或其他一些来避免0!= O和1!= l等问题。您可能需要考虑某种校验和或加密来防止作弊。

答案 1 :(得分:0)

由于我的程序是读取和写入数据文件的程序,因此我可以维护一种编码,例如UTF-8或16,以便在任何平台上运行。我不必支持阅读任何人手工制作的数据文件(在编辑器中)。

对于粘贴操作,似乎它将全部在同一台机器上。我猜测使用当前的默认编码进入剪贴板将是很好的(它知道自己的编码,在我手中)。我将在剪贴板上的字符串处绘制支持线。我的程序可以使用当前的默认编码从剪贴板读取和写入(并且要求它必须工作)

我对编码的困难在于知道更改发生的位置和时间。如果您认为上面的数据文件可以通过将它们从一台机器移动到另一台机器,请告诉我。谢谢 - 马克