私は本当に感謝の返答と私のxmlパーサメソッドを提出し、最後に問題が言及しています。文字列に変更可能な配列の値をコピーできません
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
currentElement = [elementName copy];
if([elementName isEqualToString:@"alluser"])
{
objUser = [[Users alloc] init];
}
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([elementName isEqualToString:@"username"])
{
objUser.userName =[currentElementValue stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSLog(@"%@",objUser.userName);
}
if([elementName isEqualToString:@"password"])
{
objUser.passWord = [currentElementValue stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSLog(@"%@",objUser.passWord);
}
if([elementName isEqualToString:@"user"])
{
[usersArray addObject:objUser];
[objUser release];
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if(!currentElementValue)
{
currentElementValue = [[NSMutableString alloc] initWithString:string];
[currentElementValue stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
}
else
{
[currentElementValue appendString:string];
[currentElementValue stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
}
if([currentElementValue isEqualToString:@"User"])
{
[currentuser appendString:string];
}
if([currentElementValue isEqualToString:@"Pass"])
{
[currentpass appendString:string];
}
}
-(IBAction)backgroundclick:(id)sender
{
[txtpass resignFirstResponder];
[txtusername resignFirstResponder];
}
-(IBAction)returnPressed:(id)sender
{
[sender resignFirstResponder];
}
-(IBAction)LoginClicked:(id)sender
{
int cnt=0;
NSString *currUser = txtusername.text;
// NSString *passWord = txtpass.text;
// int i=0;
for(Users *objUser in usersArray)
{
/// how to get value and how to compare string...
}
return;
}
私の可変配列は、このコードである(usersArray)です。私は配列に解析データを持っていて、特定のアクションが実行されている配列と一致する場合、テキストフィールドの値でユーザー名とパスワードを確認したい。しかし何とか私は文字列にデータをアクセスできません。
お手数ですが、エディタで{}オプションを使用してコードをフォーマットしてください。 – fsaint
コードを読みやすくするためにあなたの投稿をフォーマットしてください。あなたを喜んで助けてくれる人たちを助けます。 :) – Altealice
将来的にはコードを正しくフォーマットして、少なくとも基本的なスペルミスをチェックしてください。あなたが質問をするのに時間を費やすことができない場合、なぜ人々がそれに答えるのを期待していますか? –