Bonjour,
Dans mon exercice, j'ai un fichier de sous-titres .srt comme ceci :
1
00:00:00,535 --> 00:00:02,462
Je suis professeur d'informatique et
d'ingéniérie informatique

2
00:00:02,462 --> 00:00:04,389
à Carnegie Mellon,

3
00:00:04,389 --> 00:00:06,318
et mes recherches se concentrent sur
l'utilisabilité de la vie privée

Je dois, dans une application Java EE, permettre à l'utilisateur de traduire les textes des sous-titres du fichier (n'afficher que les textes, pas de numéros (1, 2, 3) et pas de timecode (00:00:00,535 --> 00:00:02,462)), et d'enregistrer la traduction dans une bdd. dans la bdd je dois enregistrer aussi le timecode et le sous-titre d'origine, en plus du sous-titre traduit par l'utilisateur. Mon schéma de bdd est comme ceci : id, timecode, soustitreligne1, soustitreligne2, soustitretraduitligne1, soustitretraduitligne2 , parce qu"il y a parfois des sous-titres de 2 lignes.


Comment je peux remplir les champs timecode, soustitreligne1, soustitreligne2 dans la bdd depuis le fichier .srt our les lire depuis la bdd?

J'ai fait un programme java qui lit le fichier .srt avec un BufferedReader et en retourne un ArrayList<String> :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class SubtitlesHandler {
	private ArrayList<String> originalSubtitles = null;
	private ArrayList<String> translatedSubtitles = null;
 
	public SubtitlesHandler(String fileName) {
		originalSubtitles = new ArrayList<String>();
		translatedSubtitles = new ArrayList<String>();
		BufferedReader br;
		try {
			br = new BufferedReader(new FileReader(fileName));
			String line;
			while ((line = br.readLine()) != null) {
				originalSubtitles.add(line);
			}
			br.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
 
	public ArrayList<String> getSubtitles() {
		return originalSubtitles;
	}
 
}