So erhalten Sie Kontaktdaten von iPhone und CSV-Datei von diesem Kontakt

8

Ich möchte Kontaktdaten in einem iPhone mit Informationen wie Vorname, Nachname, Telefonnummer, Telefonnummer, E-Mail-Adresse, E-Mail-Adresse usw. erhalten.

Kann mir jemand dabei helfen?

Ich möchte eine .csv-Datei aus den Kontaktdaten in einem bestimmten iPhone erstellen. Ich möchte iPhone-Adressbuchdaten abrufen.

    
Vivek2012 19.08.2011, 08:18
quelle

4 Antworten

13

Nachfolgend finden Sie den Code, um alle Informationen zum iPhone-Kontaktbuch zu erhalten ...

%Vor%     
alloc_iNit 19.08.2011, 09:00
quelle
9

Ich habe den obigen iApple-Code als Ausgangspunkt verwendet und daraus eine funktionierende Version erstellt - diese sammelt nur alle Adressbucheinträge in einem Array. Wie oben erwähnt, funktioniert das ursprüngliche iApple nicht, es gibt ein paar Fehler darin. Dieser funktioniert und wurde getestet.

Hinweis: Dies gibt keine Kontakte zurück, die keinen Namen haben - Sie können das für Ihren eigenen Code entfernen, ich habe es einfach gemacht, weil ich nur Kontakte mit gesetzten Namen brauche, und NSMutableDictionary mag nil nicht Einträge (Abstürze).

In meinem eigenen Adressbuch habe ich ein paar Einträge, die nur eine E-Mail sind - ich bin mir nicht sicher, wie sie dorthin gekommen sind, aber es ist sicherlich möglich, Adressbucheinträge ohne Namen zu haben. Denken Sie daran, wenn Sie über ein Adressbuch iterieren.

Ich verwende den vollständigen Namen gemäß den Empfehlungen von Apple - ABRecordCopyCompositeName gibt eine Zusammensetzung von Vor- und Nachname in der vom Benutzer angegebenen Reihenfolge zurück.

Schließlich habe ich dies zu einer statischen Methode gemacht und in eine Hilfsklasse eingefügt.

Dies ist für die Verwendung mit ARC!

%Vor%     
n13 01.02.2012 09:46
quelle
2

Zuerst müssen Sie das Adressbuch-Framework verwenden, damit dieses zu Ihrem Xcode-Projekt hinzugefügt werden muss.

Als nächstes müssen Sie die Aufgabe in ein paar Schritten aufteilen.

1) Holen Sie die Personen in das Adressbuch

2) Erstellen Sie Ihre CSV-Datei. Ich nehme an, Sie wissen etwas über CSV-Dateiformatierung mit Zeichen, um Felder zu trennen und wann Sie Return-Zeichen hinzufügen, so dass Sie eine ordnungsgemäß formatierte Datei haben. Dies ist wahrscheinlich für einen anderen Frage Thread übrig, wenn Sie Hilfe benötigen.

3) Speichern Sie Ihre .csv-Datei irgendwo

1) Um ein Array aller Personen im Adressbuch zu erhalten, würden Sie Folgendes tun. Die Referenzdokumentation für ABAddressBook lautet hier . Es sollte sehr hilfreich sein, Ihnen beim Zugriff auf die Daten zu helfen.

%Vor%

2) Sie müssen durch alle Personen iterieren und Ihre gesamten CSV-Daten erstellen. Normalerweise würden Sie die CSV-Daten in einem NSString manuell erstellen und dann in NSData konvertieren und die NSData in einer Datei speichern. Dies ist nicht ideal, wenn Sie mit sehr großen Datenmengen zu tun haben. Wenn dies der Fall ist, möchten Sie wahrscheinlich Code, um Ihre CSV-Daten in die Datei in Blöcken schreiben, so dass Sie Speicher freigeben können, wie Sie gehen. Der Einfachheit halber zeigt mein Code nur, dass Sie die vollständige Datei erstellen und dann die gesamten Dateien speichern.

%Vor%

3) Schreiben Sie die Datei an einen beliebigen Ort

%Vor%     
Hazmit 19.08.2011 08:48
quelle
0

Siehe Adressbuch-API besonders Importieren und Exportieren von Personen- und Gruppendatensätzen

Checken Sie auch das Adressbuch-Testbeispiel in diesem Blog

    
Mouna Cheikhna 19.08.2011 08:30
quelle

Tags und Links