转换Java来Obejctive-C(的Android到iOS) [英] Converting Java to Obejctive-C (Android to iOS)
问题描述
所以,我只是完成了从Java转换我的解扰器的方法来Objective-C的位置:<一href=\"http://stackoverflow.com/questions/13794347/converting-java-to-objective-c-android-to-ios\">Converting Java中的Objective-C(的Android到iOS)
So I just completed converting my descrambler method from Java to Objective-C Here: Converting Java to Objective-c (Android to iOS)
现在,我需要我的方法加扰从Java转换成Objective-C的
Now I need to convert my scrambler method from Java to Objective-C
这是Java版本:
int scrambBase20[] = {1,2,3};
String scramble(String input){
while(input.length()%scrambBase20.length!=0){
input+=" ";
}
String ret="";
int offset = -scrambBase20.length;
for(int i=0;i<input.length();i++){
if(i%scrambBase20.length==0)
offset+=scrambBase20.length;
ret+=(char)(((byte)(input.charAt(scrambBase20[i%scrambBase20.length]+offset)))^0x45);
}
return ret;
}
这我转换X code版本:
This my converted Xcode version:
int scrambBase20[] = {1,2,3};
-(NSString *) scramble:(NSString*) input{
while([input length]%(sizeof scrambBase20)!=0){
input = [input stringByAppendingString:@" "];
}
NSString *ret=@"";
int offset = -(sizeof scrambBase20);
for(int i=0;i<[input length];i++){
if(i%(sizeof scrambBase20)==0){
offset+=(sizeof scrambBase20);
}
ret = [ret stringByAppendingString:[NSString stringWithFormat:@"%c",(char)((((Byte)[input characterAtIndex:(scrambBase20[i%(sizeof scrambBase20)]+offset)]))^0x45)]];
}
return ret;
}
在运行时我得到以下错误:NSRangeException',原因:' - [__ NSCFString characterAtIndex:]:范围或索引越界
At runtime I get the following error: 'NSRangeException', reason: '-[__NSCFString characterAtIndex:]: Range or index out of bounds'
有谁看到错误,我在做什么?
Does anyone see the error I'm making?
推荐答案
我发现了这个问题。
转换的code不正常工作。问题是,我用了它用我的程序流的顺序。
The converted code does work properly. The problem was that I mixed up the order in which my routines flow.
我不小心加密我的code,然后炒它,而它本来是要抢我的code,然后加密。
I accidentally encrypted my code and then scrambled it while it was supposed to scramble my code then encrypt it.
这篇关于转换Java来Obejctive-C(的Android到iOS)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!