2013-01-31 13 views
6

czytałem File.AppendAllText metody od MSDNFileNotFoundException w File.AppendAllText

http://msdn.microsoft.com/en-us/library/ms143356.aspx

Widziałem one wymienione FileNotFoundException do ewentualnej listy wyjątków dla metody ale według tam opis metody na tej samej stronie

Otwiera plik, dołącza określony ciąg do pliku, a następnie zamyka plik. Jeśli plik nie istnieje, ta metoda tworzy plik, zapisuje określony ciąg do pliku, a następnie zamyka plik.

ta część

Jeśli plik nie istnieje, ta metoda tworzy plik

wydaje się, że wyjątek ten nie może być wrzucony do tej metody.

+3

Przypuszczam, że jest możliwe, że może nie być w stanie utworzyć pliku z powodów bezpieczeństwa lub podobnych. – Sayse

+0

@ Sayse Istnieje inny wyjątek. –

+0

Wyjątek FileNotFoundException ma miejsce w przypadku, gdy katalog nie istnieje. –

Odpowiedz

7

Jeśli spojrzeć na (powiedzmy) realizacji Mono (który jest kompatybilny z Microsoft), wszystkie File.AppendAllText kończy się robi (kontrole argumentów na bok) jest stworzenie StreamWriter ze ścieżki i wywołanie Write na tym obiekcie.

Ani konstruktor ani stosowane metody są wymienione w dowolnym miejscu, aby rzucić FileNotFoundException, o ile mogę powiedzieć, więc może być błąd dokumentacji.

+4

Może to być błąd dokumentacji, tak; Nie widzę żadnego sposobu, aby wyjątek ten był odrzucany z tej metody. –

+0

Ładne pytanie i miła odpowiedź :) –

+0

+1 ładne szczegóły wnętrza funkcji :) –

0

Ten wątek może być stary, ale poprawna odpowiedź podana powyżej przez Jednoosobową ekipę została zignorowana przez innych. Faktem jest, że wyjątek FileNotFoundException nie jest literówką. Istnieje i rozumiem. Przyczyną jest następujący komunikat o wyjątku: "Nie można znaleźć części ścieżki". Zgodnie z opisem plik File.AppendAllText otworzy plik , jeśli nie istnieje, ale musi mieć prawidłową ścieżkę .

Powiązane problemy