前提・実現したいこと
フォルダの中からテキストファイルのみを示すアコーディオンを作成したいのですが、仕組みがわかりません・・・
どなたか教えて頂くことは出来ませんでしょうか?
発生している問題・エラーメッセージ
Exception in Application start method java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767) Caused by: java.lang.RuntimeException: Exception in Application start method at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:917) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$154(LauncherImpl.java:182) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.Error: Unresolved compilation problems: 式の型は配列型で FileReader に解決済みのものである必要があります コンストラクター File(InputStream) は未定義です 式の型は配列型で FileReader に解決済みのものである必要があります at kadai.seventeen.start(seventeen.java:34) at com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$161(LauncherImpl.java:863) at com.sun.javafx.application.PlatformImpl.lambda$runAndWait$174(PlatformImpl.java:326) at com.sun.javafx.application.PlatformImpl.lambda$null$172(PlatformImpl.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$173(PlatformImpl.java:294) at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$147(WinApplication.java:177) ... 1 more Exception running application kadai.seventeen
該当のソースコード
Javafx
1package kadai; 2 3import java.io.File; 4import java.io.FileReader; 5import java.io.FilenameFilter; 6 7import javafx.application.Application; 8import javafx.scene.Scene; 9import javafx.scene.control.Accordion; 10import javafx.scene.control.TitledPane; 11import javafx.scene.layout.BorderPane; 12import javafx.stage.Stage; 13 14public class seventeen extends Application{ 15private TitledPane[] tp; 16private Accordion ac; 17private FileReader te; 18 19public static void main(String[] args)throws Exception{ 20 launch(args); 21} 22public void start(Stage stage)throws Exception{ 23//ここから 24 File fl = new File("."); 25 File[] fls = fl.listFiles(new sampleFileFilter()); 26 27 File[]fc = new File[fls.length]; 28 29 tp = new TitledPane[fls.length]; 30 ac = new Accordion(); 31 32 for(int i = 0;i < fls.length;i++) { 33 34te[i] = new File(getClass().getResourceAsStream(fls[i].getName())); 35tp[i] = new TitledPane(fls[i].getName(),te[i]); 36 } 37//ここまでのコードを変えたいです 38テキストファイルの内容をアコーディオンとして順列する方法が分かりません・・・ 39 40 BorderPane bp = new BorderPane(); 41 42 ac.getPanes().addAll(tp); 43 bp.setCenter(ac); 44 45 Scene sc = new Scene(bp,300,300); 46 47 stage.setScene(sc); 48 49 stage.setTitle("サンプル"); 50 stage.show(); 51} 52class sampleFileFilter implements FilenameFilter{ 53 public boolean accept(File f,String n) 54 { 55 if(n.toLowerCase().endsWith(".txt")) { 56 return true; 57 } 58 return false; 59 } 60} 61} 62
試したこと
ファイルを入れられるようにしたのですが・・・
補足情報(FW/ツールのバージョンなど)
jdk14
回答2件
あなたの回答
tips
プレビュー