Чтение String из другого класса

Рейтинг: 0Ответов: 2Опубликовано: 23.11.2014

Есть программа на java, которая читает из файла текст и выводит на экран. Я хочу запихнуть чтение файла в другой класс, и пусть там всё будет public, чтоб без сетов и гетов. Т.е. в основном классе нужно будет получить String переменную из класса для чтения с записанной в нее строкой и изменить её, ну и вывести на э кран. Пытался, но не получается. Помогите с этим разобраться, пожалуйста.


public class Read {

        String baseStringWithBlank = "";
        String encodedString = "";
        int numberOfStringsReaded = 0;
        String baseString = "";

        File f;

    Read(){
        f = new File("file.txt");
    }

    void Read(){

        try (BufferedReader buffer = new BufferedReader(new InputStreamReader(
                new FileInputStream(f), "Cp1251"))) {

            String readedString = "";
            while ((readedString = buffer.readLine()) != null) {
                baseStringWithBlank += readedString;
                baseStringWithBlank += ";";
                numberOfStringsReaded++;
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

        baseString = baseStringWithBlank.replaceAll(" ", "");
        System.out.println(baseString);
    }

        String GetContent(){
            return baseString;

    }
}

//////////////////////////////////////////////////////

public class Example {
            public static void main(String[] args) {

       // .........

        Read r = new Read();

        for (int i = 0; i < numberOfStringsReaded; i++) {
            String parseCommand = baseString.substring(0, 3);

            String symbolAfterCommand = baseString.substring(3, 4);

            switch (parseCommand) {
                    case COMMAND_KOP:
                        encodedString += KOP;

//..........

}

Ответы

▲ 2Принят
public static final String MY_СONSTANT = "доступайся Clazz.MY_СONSTANT из любого места программы";
▲ 1

String - неизменяемые объекты в Java, используйте StringBuilder или StringBuffer (в случае многопоточного исполнения кода).