Я написал программу при помощи Java, в которой есть главное окно для набора текста, окно для вывода сообщений и ошибок, а так же кнопка запустить. Своеобразная максимально минималистичная IDE так сказать. Код ниже. Выводит сообщения на подобие System.out.print("")
при помощи Buffered reader
. Помогите пожалуйста сделать ввод сообщений с клавиатуры. Как в командной строке при Scanner
и String line = scanner.nextLine
. Чтобы вводить можно было в мой txtAreaOutput
. Помогите чем можете пожалуйста. Вот код
public class Controller {
@FXML
public TextArea areaTxtMain;
@FXML
public TextArea txtAreaOutput;
@FXML
public CheckBox checkBoxIcludeMain;
@FXML
public Label label;
@FXML
public CheckBox showDirectoryCheckBox;
boolean checkMain = true;
String myJarPath = Controller.class.getProtectionDomain().getCodeSource().getLocation().getPath();
String className = "Main";
String code = " //put your code hear";
String classMain = "public class " + className + "{ \n public static void main(String[] args){ \n " + code + "\n } \n}";
@FXML
void initialize() {
areaTxtMain.setText(classMain);
label.setText("Output log screen " + new File(myJarPath).getParent() + "\\");
}
public void launchBtnAction(ActionEvent actionEvent) {
String dirPath = new File(myJarPath).getParent() + "\\" + className + "\\" + className + ".java";
String path = new File(myJarPath).getParent();
try {
makeDir(className);
if (checkMain) {
FileWriter writer = new FileWriter(dirPath, false);
writer.write(areaTxtMain.getText());
writer.flush();
} else {
String data = "public class " + className + "{ \n public static void main(String[] args){ \n " + areaTxtMain.getText() + "\n } \n}";
FileWriter writer = new FileWriter(dirPath, false);
writer.write(data);
writer.flush();
}
String runCommand = "cmd /c cd " + path + "\\" + className + " && javac " + className + ".java" + " && java " + className;
Process run = Runtime.getRuntime().exec(runCommand);
readData(run);
} catch (Exception ex) {
StringWriter errors = new StringWriter();
ex.printStackTrace(new PrintWriter(errors));
txtAreaOutput.setText(errors.toString());
}
}
public void checkBoxIncludeMain(ActionEvent actionEvent) {
if (checkBoxIcludeMain.isSelected()) {
areaTxtMain.setText("public class " + className + "{ \n public static void main(String[] args){ \n " + " " + areaTxtMain.getText() + "\n } \n}");
checkMain = true;
} else {
areaTxtMain.setText("");
checkMain = false;
}
}
public void clearLogScreen(ActionEvent actionEvent) {
txtAreaOutput.setText("");
}
public void checkShowBox(ActionEvent actionEvent) {
if (showDirectoryCheckBox.isSelected()) {
label.setText(label.getText() + " " + new File(myJarPath).getParent());
} else {
label.setText("Output log screen");
}
}
public String readData(Process run) throws Exception {
String line;
BufferedReader bri = new BufferedReader(new InputStreamReader(run.getInputStream()));
BufferedReader bre = new BufferedReader(new InputStreamReader(run.getErrorStream()));
while ((line = bri.readLine()) != null) {
txtAreaOutput.setText(line);
}
bri.close();
while ((line = bre.readLine()) != null) {
txtAreaOutput.setText(line);
}
bre.close();
run.waitFor();
return line;
}
public void makeDir(String dirName) {
String path = new File(myJarPath).getParent();
File myPath = new File(path + "\\" + dirName);
myPath.mkdir();
}
}
Добрый день всемПытаюсь подключить библиотеку jquery-knob, устанавливал через npm install jquery-knob, в package-json она есть"jquery-knob": "^1
Вопрос следующий: как получить значение data, которое передает php сервер js скрипту в текстовом формате (что бы потом сделать проверку, например...
Подскажите пожалуйста каким образом можно из диапазона чисел в input="number" убрать лишние числа? Нужно чтобы остались числа 3,4,5,6,7,8,9,10,11,12,18,20,24Вроде...
Добрый день уважаемыеТакой вопрос как оборачивать li с class="item" в теги li class="item_group" ul class="ul_group"