Чтение файлов внутри a, Jar

Попробуйте следующее:

public static void drawDiamond(int height) {
    if (height % 2 == 0) throw new AssertionError("Height should be an odd number!");
    height = (height + 1) / 2;
    drawTop(height);
    drawBot(height - 1);
}

public static void drawTop(int height) {
    int rows = height;
    int starCount = 1;
    int spaceCount = rows - 1;
    for (int rowCount = 1; rowCount <= rows; rowCount++) {
        for (int i = 0; i < spaceCount; i++) {
            System.out.print(" ");
        }
        for (int i = 0; i < starCount; i++) {
            System.out.print("*");
        }
        starCount += 2;
        spaceCount--;
        System.out.println();
    }
}

public static void drawBot(int height) {
    int rows = height;
    int starCount = 2 * (rows - 1) + 1;
    int spaceCount = 1;
    for (int rowCount = 1; rowCount <= rows; rowCount++) {
        for (int i = 0; i < spaceCount; i++) {
            System.out.print(" ");
        }
        for (int i = 0; i < starCount; i++) {
            System.out.print("*");
        }
        starCount -= 2;
        spaceCount++;
        System.out.println();
    }
}
0
задан N1ark 13 July 2018 в 17:15
поделиться

1 ответ

лучшая практика не помещает изображение в банку, вы должны создать такую ​​структуру проекта, как это:

|----- project-folder
|--------- app.jar
|--------- assets
|------------- img.png
|------------- img2.png

, поэтому в вашем коде вы можете просто использовать:

ImageIO.read(new File("assets/img.png"));
-1
ответ дан GJCode 17 August 2018 в 12:22
поделиться
  • 1
    Нет ничего плохого в размещении изображений внутри JAR. – dnault 13 July 2018 в 17:08
  • 2
    Я неправильно объяснил, проблема в том, что я экспортирую проект в банку, мой проект на самом деле настроен, как вы показываете! – N1ark 13 July 2018 в 17:13
  • 3
    обратите внимание, что в моем решении app.jar - это то, что вы экспортировали, чтобы вы могли создать папку под названием project-folder где-то на вашем компьютере и поместить внутри экспортированной банки и другую папку под названием imgs, которая содержит изображения, и все будет работать просто хорошо. Я сказал, что это лучшая практика, потому что вам не нужно класть файл ресурсов внутри банки, и это упростило упаковку приложения, никогда не говорило, что изображение внутри банки не соответствует @dnault. – GJCode 13 July 2018 в 17:43
Другие вопросы по тегам:

Похожие вопросы: