0

ny文字列を含むcsvファイルを作成して添付したい。これらの行を使用してこれを試しました

[foodString writeToFile:@"Meal.csv" atomically:YES encoding:NSUTF8StringEncoding error:NULL];
                [mailView addAttachmentData:NULL mimeType:@"text/csv" fileName:@"Meal.csv"];
                [mailView setMessageBody:@"Open attached file." isHTML:NO];

MFMail はメール内にファイルのアイコンを表示しますが、ファイルを取得できませんでした。

助けてください。ありがとう...

4

3 に答える 3

2

ヒント ...

addAttachmentData:NULL

実際にデータを添付する必要があります。ファイル名は、ファイルに付けるために選択した名前にすぎません。それ以外の用途はなく、その名前でファイルを添付することを意味するものでもありません。

MFMailComposeViewControllerのドキュメントで明確になっています。

したがって、次のようなことをする必要があります。

NSData *myData = [NSData dataWithContentsOfFile:your-full-file-path];

データを生成します。名前だけでなく、完全なファイルパスを指定する必要があることに注意してください(読者の演習として残しておきます)。

于 2011-04-20T11:52:45.003 に答える
0

添付データを空にすることはできないため、

これを試して

[foodString writeToFile:@"Meal.csv" atomically:YES encoding:NSUTF8StringEncoding error:NULL];
[mailView addAttachmentData:[NSData dataWithContentsOfFile:path_to_Meal.csv] mimeType:@"text/csv" fileName:@"Meal.csv"];
[mailView setMessageBody:@"Open attached file." isHTML:NO];
于 2011-04-20T11:58:28.923 に答える
0

これを試して

    NSString *filePath = @"write your file path here";

    [foodString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:NULL];
 if([[NSFileManager defaultManager]fileExistsAtPath:filePath]){
    [mailView addAttachmentData:[NSData dataWithContentsOfFile:filePath] mimeType:@"text/csv" fileName:@"Meal.csv"];
    [mailView setMessageBody:@"Open attached file." isHTML:NO];

}
else{
NSLog(@"File not created!");
}
于 2011-04-20T12:02:16.030 に答える