データの解析中にデータをsqliteに挿入します。しかし、何らかの理由でSELECTクエリを実行すると、余分な行とタブスペースが返されます。このクエリを書くと、データは正しく挿入されますが余分なスペースがあります。SQLite Insertは余分な行で値を返します
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict {
if([elementName isEqual:@"root"]) {
}
else if([elementName isEqualToString:@"value"]) {
value = [[Value alloc] init] ;
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
if(!trueValue)
trueValue = [[NSMutableString alloc] initWithString:string];
else{
[trueValue appendString:string];
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
if([elementName isEqualToString:@"root"])
return;
if([elementName isEqualToString:@"value"]) {
NSString *sqlQuery = [NSString stringWithFormat:@"INSERT OR REPLACE INTO DETAIL(ID,KEY, TITLE) VALUES ('%@','%@','%@');", key, parent_key, title];
const char *insert_sql = [sqlQuery UTF8String];
sqlite3_exec(db, insert_sql, NULL, NULL, NULL);
}
else if([elementName isEqualToString:@"key"])
[value setValue:finalValue forKey:elementName]
[trueValue release];
trueValue = nil;
}
がどのように私は基本的に余分なスペースを置き換えることができますが好き: "\ nを\ T \ T \ T" "と" すべての行のこの文の前に?
なぜ5 '%@と3つの値がありますか? – meggar
更新!!!タイプミスのためにsrry! – lifemoveson