Я хотел бы использовать текст только из субтитров для дальнейшей обработки.
Таким образом, открытие файла srt загрузит это
1
00:00:10,500 --> 00:00:13,000
Elephant's Dream
2
00:00:15,000 --> 00:00:18,000
At the left we can see...
Затем, после зачистки/извлечения, результат будет
Elephant's Dream
At the left we can see...
Я хочу удалить всю нумерацию и временной код, чтобы вывод состоял только из простого текста в том же порядке, что и исходный субтитр, и сохранил результат в переменной для дальнейшей обработки.
public void open_file()
{
JFileChooser filechooser = new JFileChooser();
filechooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
int i = filechooser.showOpenDialog(this);
if (i == filechooser.CANCEL_OPTION)
return;
File OpenFile = filechooser.getSelectedFile();
if (OpenFile == null || OpenFile.getName().equals(""))
{
JOptionPane.showMessageDialog(this, "choose file", "Error", JOptionPane.ERROR_MESSAGE);
return;
}
try {
BufferedReader bufferedreader = new BufferedReader(new FileReader(BukaFile));
StringBuffer stringbuffer = new StringBuffer();
String Row;
while ((Row = bufferedreader.readLine()) != null) stringbuffer.append(Row+"\n");
textArea.setText(stringbuffer.toString());
String SubText = textArea.getText();
} catch (FileNotFoundException ex) {
JOptionPane.showMessageDialog(null, "File not found" + ex);
} catch (IOException ex)
{
JOptionPane.showMessageDialog(null, "IO Error"+ ex);
}
}
Я сделал метод (как указано выше), чтобы открыть и загрузить существующий файл srt и поместить его в переменную String (названную выше SubText).
Все, что я знаю, чтобы извлечь эти тексты, это то, что мне нужно использовать нумерацию, временные коды и пустое пространство для начальной и конечной точек, но я понятия не имею, как кодировать для обнаружения этих нумераций и временных кодов в тексте.
Как мне это сделать в java? Я использую Netbeans, кстати.