2014-01-03 2 views
1

Я в основном скопировал приведенный ниже код из учебника. Раньше у меня была такая ошибка, и мне удалось ее исправить, но потому, что я не знаком с классами & Используемые методы. У меня небольшая проблема с этим.'ошибка: не удается найти символ' Ошибка компилятора

Ниже приведена ошибка, сгенерированная компилятором.

TextReader.java:27: error: cannot find symbol output = new BufferedOutputStream(filePath.newOutputStream()); 
    symbol: method newOutputStream() 
    location: variable filePath of type Path 

Ниже приведен код. В принципе, предполагается, что пользователь может ввести его в текстовый файл, затем прочитать текстовый файл и отобразить информацию пользователю.

import java.nio.file.*; 
import static java.nio.file.StandardOpenOption.*; 
import java.io.*; 
import javax.swing.JOptionPane; 
public class TextReader 
{ 
    public static void main (String[]args) 
    { 
     Path filePath = Paths.get("Message.txt"); 
     String s = JOptionPane.showInputDialog(null,"Enter text to save as a file","Text File Creator",JOptionPane.INFORMATION_MESSAGE); 
     byte[] data = s.getBytes(); 
     OutputStream output = null; 
     InputStream input = null; 
     try 
     { 
     output = new BufferedOutputStream(filePath.newOutputStream()); 
     output.write(data); 
     output.flush(); 
     output.close(); 
     } 
     catch(Exception e) 
     { 
     JOptionPane.showMessageDialog(null,"Message: " + e,"Error!!",JOptionPane.WARNING_MESSAGE); 
     } 
     try 
     { 
     input = filePath.newInputStream(); 
     BufferedReader reader = new BufferedReader(new InputStreamReader(input)); 
     String ss = null; 
     ss = reader.readLine(); 
     JOptionPane.showMessageDialog(null,"Below is the information from the saved file:\n" + ss,"Reader Output",JOptionPane.INFORMATION_MESSAGE); 
     input.close(); 
     } 
     catch (IOException ee) 
     { 
     JOptionPane.showMessageDialog(null,"Message: " + ee,"Error!!",JOptionPane.WARNING_MESSAGE); 
     } 
    } 
} 
+0

Являются ли какие-либо из ваших импортных нерешенных? – OldProgrammer

+0

Не уверен, честно говоря, я действительно не знаю, что это значит. Я не пробовал импортировать эти пакеты раньше, но я делаю это так же, как всегда. – user3155574

ответ

1

Path не метод newOutputStream(). Я обычно использую new FileOutputStream(File) для записи в файлы, хотя в Java может быть более новый API.

Вы действительно должны использовать IDE, например. Ecplise или Netbeans, так как он мгновенно скажет вам, что метод не существует, и сделает код записи в тысячу раз проще вообще. Например, вы можете нажать ctrl + space в Eclipse и отобразить список классов/методов/переменных, которые соответствуют последнему введенному вами слову (список также будет автоматически всплывать при вводе периода).

+0

Awesome. Спасибо за ответ. Я подумал, что это может быть так, но это то, как это было в учебнике. Я воспользуюсь вашим предложением. Я посмотрю Ecplise или Netbeans, все, чтобы облегчить :) – user3155574

Смежные вопросы