String 将字符串/字母转换为整数

String 将字符串/字母转换为整数,string,unity3d,integer,converter,unityscript,String,Unity3d,Integer,Converter,Unityscript,今天我终于决定写一份报告,希望能对我花了几个小时寻找的问题有所帮助。(在过去的几个小时里,我一直在寻找答案,从谷歌到这里再到Unity Answers。) 我要找的是,把一串纯粹的单词/字母变成一个整数。因此,“Hello World”将被相应地翻译成一串数字。这可能令人惊讶,但这比听起来要困难得多。我已经找到了一种基本上做所有事情的方法,但是,到目前为止 大概最好的方法是获取字符串中每个字母的ASCII值,并将它们全部放在一个整数中。(没有序列或需要将它们分开,但只有一个数字。)然而,我不知

今天我终于决定写一份报告,希望能对我花了几个小时寻找的问题有所帮助。(在过去的几个小时里,我一直在寻找答案,从谷歌到这里再到Unity Answers。)


我要找的是,把一串纯粹的单词/字母变成一个整数。因此,“Hello World”将被相应地翻译成一串数字。这可能令人惊讶,但这比听起来要困难得多。我已经找到了一种基本上做所有事情的方法,但是,到目前为止

大概最好的方法是获取字符串中每个字母的ASCII值,并将它们全部放在一个整数中。(没有序列或需要将它们分开,但只有一个数字。)然而,我不知道从哪里开始,也不知道如何开始。任何你认为有用的东西,最好是尽可能简捷和不麻烦


为了尽可能清楚,我需要使用纯字母变量“example”并将其转换为整数/仅为数字序列。

如果您只是尝试将任意字符串转换为随机种子,那么为什么不尝试
randomSeed.GetHashCode()
?这将返回一个适合设置种子的
int
值,该值将在每次输入相同字符串时产生相同的数字。

您可以迭代所有字符,获取它们的字符码并将它们链接在一起。第一个方法将字符串拆分为单个字符,并使用Array.reduce:

var str = 'qwertzuiop';
var num = parseInt(str.split('').reduce(function(a, b) {return a + b.charCodeAt(0);}, '');
第二个调用字符串上的Array.forEach,因为它具有数字索引和长度属性

var num = ''; [].forEach.call(str, function(c) {num += c.charCodeAt(0);});
    num = parseInt(num);

在过时的浏览器中,循环必须使用

数字序列应该是什么?若要从数字返回到字符串,除非创建ASCII值数组,否则这将不起作用。这样做的目的是什么?在JS中,获取字符的ASCII值就像
“n”一样简单。charCodeAt(0)
OP可能想要编辑标记。对不起,除非我大错特错;这是针对JavaScript的,不是针对Java的。准确地说,JavaScript是统一的。而且,这些数字应该是在一个单一的序列中。单个整数。@Brennan我不能使用charCodeAt,因为这仅限于在unicode中翻译单个字符。我需要将整串单词/字母翻译成一个整数。(很抱歉,我刚刚编辑了上面的注释,但它不允许我这样做。)是的,因此您将循环字符串中的每个字符,在每个位置获取字符码,并将字符码附加到字符串中。但再说一遍,你为什么要这么做?听起来有点邪恶。你是对的,这是Javascript,我读错了你的代码。但为了清楚起见:
var int_string=“”;for(var i=0;i
将为您提供一个字符串,其中包含您正在翻译的字符串的所有ascii代码。对于我所寻找的内容,这是一个更好、更简单的解决方案。最棒的是,当我将UnityScript/JavaScript项目切换到C#时,它不需要任何调整。非常感谢。