Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача на java

Алена Ученик (112), на голосовании 1 год назад
Весь код не уместился, я дополнила вопрос
Я добавила поле для ввода символа, но нужно, чтобы это поле было на самой форме. Пользователь вводит символ, этот символ в словах должен замениться на #

 import java.awt.Dimension; 
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.*;
import javax.swing.JOptionPane;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class TestFrame extends JFrame {

public TestFrame() {
super("Тестовое окно");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

panel.add(Box.createVerticalGlue());
/*
String name;
name = JOptionPane.showInputDialog("Vvedite bukvy");
*/
panel.add(Box.createVerticalGlue());
JTextField textField = new JTextField(20);
panel.add(textField);

final JLabel label = new JLabel("Выбранный файл");
label.setAlignmentX(CENTER_ALIGNMENT);
panel.add(label);
JButton showDialogButton = new JButton("Text Button");
JLabel jb = new JLabel("text1");
panel.add(jb);
JLabel jbb = new JLabel("text2");
panel.add(jbb);

panel.add(Box.createRigidArea(new Dimension(10, 10)));

JButton button = new JButton("Показать JFileChooser");
button.setAlignmentX(CENTER_ALIGNMENT);

button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser fileopen = new JFileChooser();
int ret = fileopen.showDialog(null, "Открыть файл");
if (ret == JFileChooser.APPROVE_OPTION) {
File file = fileopen.getSelectedFile();
label.setText(file.getName());


// Чтение содержимого файла
StringBuilder content = new StringBuilder();
try (BufferedReader br = new BufferedReader(new FileReader(file))) {
String line;
while ((line = br.readLine()) != null) {
content.append(line).append('\n');
}
} catch (IOException ex) {
ex.printStackTrace();
}

// Преобразование текста с помощью функции toUpper
//String modifiedContent = toUpper.toUpper(content.toString());
String modifiedContent = reverse.reverse(content.toString());
jb.setText(modifiedContent);
jbb.setText(content.toString());


// Сохранение обработанного текста обратно в файл
try (BufferedWriter bw = new BufferedWriter(new FileWriter(file))) {
bw.write(modifiedContent);
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
});

panel.add(button);
panel.add(Box.createVerticalGlue());
getContentPane().add(panel);

setPreferredSize(new Dimension(400, 400));
pack();
setLocationRelativeTo(null);
setVisible(true);
}

Дополнен 1 год назад
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
new TestFrame();
}
});
}
}

class toUpper{
public static String toUpper(String input) {
String [] tmpArr = input.split(" ");
String result = "";
for (int i = 0; i < tmpArr.length; i++){
if(tmpArr[i].length() > 1){
char oldFirst = tmpArr[i].charAt(0);
result += tmpArr[i].substring(0,1).toUpperCase() + tmpArr[i].substring(1,tmpArr[i].length()) + " ";
}
}
return result;
}
}

class reverse{
public static String reverse(String inputString){
int stringLength = inputString.length();
String result = "";
for (int i = 0; i < stringLength; i++){
result = inputString.charAt(i) + result;
}
return result;
}
}
/*
class replace{
public static String replace(String inputString){
int stringLength = inputString.length();
String result = "";
for (int i = 0; i < stringLength; i++){
result = replace(inputString.charAt(i) + result;
}
return result;

}
}*/
Голосование за лучший ответ
Тимофей Остапенко Ученик (185) 1 год назад
Ну тут ты пропустил точку и все пошло по жопе
Похожие вопросы