1

私はここの初心者です。次のコードを使用してUUIDを生成しようとしています。

- (NSString *)GetUUID
{
    CFUUIDRef theUUID = CFUUIDCreate(NULL);
    CFStringRef string = CFUUIDCreateString(NULL, theUUID);
    //CFUUIDBytes number = CFUUIDGetUUIDBytes (theUUID);
    DLog(@"Howwww :%@", theUUID);
    CFRelease(theUUID);
    return [(NSString *)string autorelease];
}

結果を文字列で取得しています。

NSString *result = [self GetUUID];

問題は、sqliteデータベース内に保存できないことです。VARCHARステートメントを使用して列に保存しようとしています

sqlite3_bind_text(compiledStatement, 10, [_idNumber UTF8String], -1, SQLITE_TRANSIENT);

誰かがここで私を助けてくれませんか。ありがとう..

4

1 に答える 1

0

NSStringこれは、UUIDを文字列としてデータベースに保存するだけのUUIDを返すメソッドです。

- (NSString *)newUUID
{
    CFUUIDRef theUUID = CFUUIDCreate(NULL);
    CFStringRef string = CFUUIDCreateString(NULL, theUUID);
    CFRelease(theUUID);
    return (NSString *)string;
}

AC文字列が必要な場合:

NSString *uuidString = [self newUUID];
const char *uuidCString = [uuidString cStringUsingEncoding:NSASCIIStringEncoding];
于 2011-09-22T03:09:02.767 に答える