/** * ドメイン非依存URL出力フィルタ * javadrill.tech移行時はwp_options.home/siteurlのみ変更すればよい * * データベースには絶対URL(https://minner.asia)を保持し、 * 表示時に現在のドメイン(home_url())に動的変換する */ function javadrill_make_urls_dynamic($content) { if (empty($content)) { return $content; } // データベース内の絶対URLを現在のhome_url()に置換 $old_url = 'https://minner.asia'; $new_url = untrailingslashit(home_url()); // http版も対応(念のため) $content = str_replace($old_url, $new_url, $content); $content = str_replace('http://minner.asia', $new_url, $content); return $content; } // 投稿本文、ウィジェット、タームの説明、抜粋に適用 add_filter('the_content', 'javadrill_make_urls_dynamic', 20); add_filter('widget_text', 'javadrill_make_urls_dynamic', 20); add_filter('term_description', 'javadrill_make_urls_dynamic', 20); add_filter('get_the_excerpt', 'javadrill_make_urls_dynamic', 20); 019 例外と例外処理(リソース管理とクローズ可能なリソース) 025 解答例 | Javaドリル

019 例外と例外処理(リソース管理とクローズ可能なリソース) 025 解答例

019-025 019 例外と例外処理

理想的な解答例は以下のようになります。この例では、try-with-resourcesを使用してBufferedReaderを開き、ファイルの内容を読み取り、最後にクローズされることを確認しています。

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;

public class FileReadExample {
    public static void main(String[] args) {
        try (Scanner scanner = new Scanner(System.in)) {
            System.out.println("ファイルのパスを入力してください: ");
            String filePath = scanner.nextLine();

            try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
                String line;
                while ((line = reader.readLine()) != null) {
                    System.out.println(line);
                }
            } catch (FileNotFoundException e) {
                System.err.println("ファイルが見つかりません: " + e.getMessage());
            } catch (IOException e) {
                System.err.println("ファイルの読み取りエラー: " + e.getMessage());
            }
        }
    }
}

このプログラムでは、ScannerもBufferedReaderもtry-with-resourcesを使用しています。BufferedReader内のreadLine()メソッドを使用してファイルを行単位で読み取り、コンソールに表示しています。また、ファイルが見つからない場合や読み取りエラーが発生した場合も適切に処理しています。

try-with-resourcesを使用することで、ScannerとBufferedReaderはブロックを抜ける際に自動的にクローズされ、クリーンなリソース管理が行われます。

「019 例外と例外処理」問題集リスト

🎯 実習で理解を深めよう

この内容についてJavaDrillで実際に手を動かして学習できます

コメント

タイトルとURLをコピーしました