1. C# / Говнокод #16117

    +133

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    try
                {
                    DirectoryInfo dir = new DirectoryInfo(Path.GetDirectoryName(filePath));
                    if (!dir.Exists)
                    {
                        dir.Create();
                    }
                }
                catch (IOException ex)
                {
                    throw ex;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                catch
                {
                    throw new Exception("Системная ошибка при создании директории");
                }

    Запостил: EADG, 05 Июня 2014

    Комментарии (29) RSS

    • Directory.CreateDirectory(Path.GetDirectoryName(filePath));
      Ответить
    • какая странная игра с экцепшонами
      Ответить
    • >catch
      в шарпе разве можно кидать что-то отличное от System.Exception?

      или автор с крестов переполз?
      Ответить
      • Где ты там увидел что-то отличное от System.Exception?
        Ответить
        • В последнем catch'е на 17й строке. Или он никогда не сработает?
          Ответить
          • не сработает. видимо автор хотел второй кетч для отлова выброшенных исключений
            Ответить
            • cleaned
              Ответить
              • У меня щас от твоего сообщения пердак прорвало.

                Или ты дурак, или обьясни че хочешь по русски
                Ответить
                • cleaned
                  Ответить
                  • Чувак, ну реально сил нет с тобой общаться
                    Ответить
                • try {
                    throw new A;
                  } catch(B b){}
                  Ответить
                  • И в каком месте исключение что то прорвало? это там и не ждали.
                    Ответить
                    • За скобки вышло, прорвало правую скобку :)
                      К формулировке Стертора подобный пример вполне можно привязать.
                      Ответить
                      • Ну ок. Думаю он теперь доволен.
                        Ответить
                        • Кстати, я только сейчас понял, откуда гнев. Я рассматривал стерторовский комментарий как бот, без контекста. А если применить его к обсуждаемому ГК, странно выглядит.
                          Ответить
                          • Чувак уже год как переходит на шарп. Это прискорбно

                            Самое забавное, что я сижу, хихикаю как дурак, вокруг ходят люди и спрашивают че кого, а как я им обьясню что такое прорвавшееся исключение, если не все из них даже циклы знают?)
                            Ответить
                            • Так и рождаются легенды про сумасшедших программистов. Надо быстро переключиться на баш (но не на тот баш) и сделать вид, что смеёшься над цитатой.

                              xxx: На выходных решил сделать всякое по дому - на старой бумажке составил список дел.
                              xxx: Первым пунктом было выбросить все старые бумажки...
                              xxx: Выполнил, достал список из мусорника, вычеркнул.
                              Ответить
                              • Если я на тот баш переключусь меня сразу в Сосновый бор отвезут) (это томская дурка)
                                Ответить
                            • cleaned
                              Ответить
                            • >если не все из них даже циклы знают?)
                              где это ты сидишь?
                              Ответить
                      • Исключение обходит один кетч, второй, прорывается за скобку, один на один с операционкой... BSOD!!!
                        Ответить
              • > исключение "прорвало" блок try..catch и пошло дальше
                Если нет подходящего блока catch - исключение просто полетит дальше.
                А если сам блок catch кинет исключение - то да, порвет и полетит на уровень выше.
                Ответить
              • Может.
                StackOverflowException точно никто не поймает.
                Ответить

    Добавить комментарий