사용자 이름과 이메일을 CSV 파일에 저장하려고합니다. 이 앱에는 이름과 이메일을 입력하는 사람이 50 명 미만입니다. 이러한 세부 정보는 CSV 파일에 저장해야하며 iPad에서 실제로 파일에 액세스 할 수 있어야합니다. 도와주세요!!WriteToFile : CSV (또는 any) 파일에 여러 데이터를 쓰는 방법은 무엇입니까?
답변
먼저 csv 파일의 형식을 이해해야합니다. 사실 아주 쉽습니다. 데이터가 쉼표와 줄 바꿈으로 구분 된 파일 일뿐입니다.
그래서 사람들의 이름, 이메일 및 메시지를 저장해야한다고 가정 해보십시오. CSV 파일은 다음과 같습니다.
John Doe, [email protected], Hello World!
신원 미상, [email protected], 푸 푸 여기에 우리가 줄 바꿈 쉼표로 분리 된 자신의 정보에 의해 분리 된 두 사람이
. 이 모든 혼란을 막기 위해서는 outputString
이 필요합니다.
이제 우리는 peopleArray
이라고하는 사람들의 배열이 있다고 가정 해 보겠습니다. 우리의 peopleArray
은 PeopleObjects
의 무리를 보유하고 각 PeopleObject
은 name
, email
및 message
속성을가집니다.
우리는 훌륭한 사람들과 그들의 각각의 정보를 가지고 있습니다. 이제 outputString
을 만들 수 있습니다.
NSString *outputString = @"";
for (PeopleObject *person in peopleArray) {
outputString = [outputString stringByAppendingFormat:@"%@,%@,%@\n", person.name, person.email, person.message];
}
올바른 형식의 문자열이 생성됩니다. 이제 모든 것을 파일에 써야합니다.
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDirectory = [paths objectAtIndex:0];
지금
docDirectory
파일을 작성하는 우리를 말할 것이다 :
우리는 먼저 문서 디렉토리가 필요합니다. 다음으로 디렉토리에 파일 이름을 추가해야합니다.
NSString *outputFileName = [docDirectory stringByAppendingPathComponent:@"People.csv"];
이제 형식이 지정된 csv 문자열과 저장할 위치가 있습니다. 마지막 부분은 파일에 쓰는 것입니다.
//Create an error incase something goes wrong
NSError *csvError = NULL;
//We write the string to a file and assign it's return to a boolean
BOOL written = [outputString writeToFile:outputFileName atomically:YES encoding:NSUTF8StringEncoding error:&csvError];
//If there was a problem saving we show the error if not show success and file path
if (!written)
NSLog(@"write failed, error=%@", csvError);
else
NSLog(@"Saved! File path =", outputFileName);
이제 당신은 그냥 어디 그래서 당신이 알고있는거야 outputFileName
을 저장 파일을 다시 액세스해야하는 경우.
안녕하세요 코리 씨, 답장을 보내 주셔서 감사합니다. 이제 CSV 파일을 저장할 수있게되었습니다 ... 그래서 두 개의 텍스트 필드를 사용하여 세부 정보를 가져옵니다. 사용자 ... 그래서 나는 for 루프를 사용하지 않고 ... 대신 출력 문자열에 값을 직접 보내고있다. 그러나 추가하는 대신에, 덮어 쓰고 새 데이터로 대체한다. 나는 outputString을 사용한다. [outputString stringByAppendingFormat : @ "% @, % @ \ n", name.text, address.text]; 및 BOOL written = [outputString writeToFile : 출력 파일 이름을 원자 적으로 : 예 인코딩 : NSUTF8StringEncoding 오류 : & csverror]; –
for 루프를 사용하지 않으므로 헤더 파일에 outputString을 선언하고 선언하십시오. viewDidLoad에서 초기화하면 추가 할 수 있습니다. – random
좋아 .... 나는 감사에게 ... 당신의 도움을 많이 ... 마지막 질문을 작동하도록 있어요 ... 그래서 내 맥 북 프로에서 people.csv 파일은 앱의 문서 디렉토리에 저장됩니다. 이 응용 프로그램을 iPad에 배포하면이 파일을 어디서 구해야합니까? iPad의 해당 폴더로 이동하여 CSV 파일을 삭제하거나 파일을 복사하여 드롭 박스 또는 Mac 책에 복사 할 수있게하려고합니다. 도와 주실 수 있습니까? –
- 1. 개요 데이터를 .otf 파일에 쓰는 방법은 무엇입니까?
- 2. 어셈블러에서 파일에 이진 데이터를 쓰는 방법은 무엇입니까?
- 3. 파일에 데이터를 쓰는 가장 효율적인 방법은 무엇입니까?
- 4. 비트 셋 데이터를 파일에 쓰는 방법은 무엇입니까?
- 5. C에서 트리 데이터를 파일에 쓰는 방법은 무엇입니까?
- 6. 파일에 데이터를 쓰는 응용 프로그램
- 7. Java 응용 프로그램에서 CSV 파일에 데이터를 쓰는 방법
- 8. PHP에서 csv 파일에 배열 값을 쓰는 방법은 무엇입니까?
- 9. Android : CSV 파일에 줄 바꿈을 쓰는 방법?
- 10. CSV 파일에 추가하는 방법은 무엇입니까?
- 11. 데이터를 csv 파일에 씁니다.
- 12. 기존 plistfile에 데이터를 쓰는 방법은 무엇입니까?
- 13. tinyscheme에서 파일에 쓰는 방법은 무엇입니까?
- 14. Android에서 파일에 쓰는 방법은 무엇입니까?
- 15. 리소스 파일에 쓰는 방법은 무엇입니까?
- 16. 배열 결과를 CSV 파일에 쓰는 중
- 17. Python, 목록을 옮겨서 CSV 파일에 쓰는 것
- 18. xml 파일에 데이터를 쓰는 방법
- 19. .SLK 파일에 데이터를 쓰는 방법
- 20. flex3를 사용하여 파일에 데이터를 만들고 쓰는 방법은 무엇입니까?
- 21. Python : 특정 형식의 파일에 데이터를 쓰는 방법은 무엇입니까?
- 22. node.js를 사용하여 파일에 이진 데이터를 쓰는 방법은 무엇입니까?
- 23. bmp 파일에 yuv422 이미지 데이터를 쓰는 방법은 무엇입니까?
- 24. 기본 64 문자열로 텍스트 파일에 이미지 데이터를 쓰는 방법은 무엇입니까?
- 25. C++로> 4GB 파일에 데이터를 쓰는 방법은 무엇입니까?
- 26. Delphi Pascal - 2GB보다 큰 파일에 데이터를 쓰는 방법은 무엇입니까?
- 27. 빨리 읽을 수 있도록 파일에 이진 데이터를 쓰는 방법은 무엇입니까?
- 28. C++에서 텍스트 파일에 콘솔 데이터를 쓰는 방법은 무엇입니까?
- 29. Perl을 사용하여 지정된 형식의 데이터를 이진 파일에 쓰는 방법은 무엇입니까?
- 30. plist에 데이터를 쓰는 방법은 무엇입니까?
시작 http://whataveyoutried.com/ –