5³£¼ûÎÊÌâÓë½â¾ö¼Æ»®
×ÖÄ»²î±ð²½£ºÊ×Ïȼì²é×ÖÄ»ÎļþÃûÌúÍÊÓÆµÎļþÃûÌÃÊÇ·ñ¼æÈÝ£¬È»ºóʵÑéʹÓÃÊÖ¶¯µ÷½â»òʱ¼äУÕý¹¦Ð§¡£×ÖÄ»ÏÔʾÒì³££º¼ì²é?×ÖÌåÉèÖúÍ×ÖÄ»ÎļþµÄ±àÂëÃûÌã¬È·±£Ò»Ö¡£´¦Öóͷ£ËÙÂÊÂý£º³¢?ÊԹرղ»ÐëÒªµÄºǫ́³ÌÐò£¬»òÕßÔÚ¸ßÐÔÄÜÓ²¼þÉÏÔËÐй¤¾ß£¬ÒÔÌá¸ß´¦Öóͷ£ËÙÂÊ¡£
ͨ¹ýÒÔÉϵÄÏÈÈݺͼ¼ÇÉ£¬ÏàÐÅÄãÒѾ¶ÔÈËÆÞJavaparserHDÖÐÎÄ×ÖÄ»µÄ»ù±¾ÐÅÏ¢ºÍʹÓÃÒªÁìÓÐÁËÖÜÈ«µÄÏàʶ¡£Õâ¿î¹¤¾ß²»µ«¹¦Ð§Ç¿Ê¢?£¬²¢ÇÒ²Ù×÷ÇáÓ¯£¬ÊʺÏÖÖÖÖÓ¦ÓÃÓÚ²î±ðµÄ³¡?¾°ºÍÐèÇó£¬Äܹ»ÏÔÖøÌáÉýÊÂÇéЧÂÊ¡£ÎÞÂÛÄãÊÇÒ»¸öרҵµÄÓ°Êӱ༣¬ÕÕ¾ÉÒ»¸öͨË×µÄÓû§£¬ÕâЩ¼¼ÇɺÍÐÅÏ¢¶¼½«×ÊÖúÄã¸üºÃµØÊ¹ÓÃÈËÆÞJavaparserHDÖÐÎÄ×ÖĻģ¿é£¬ÊµÏÖÀíÏëµÄ×ÖÄ»´¦Öóͷ£Ð§¹û¡£
×°ÖÃÓëÇéÐÎÉèÖÃ
ÏÂÔØ×°Ö㺻á¼û¹Ù·½ÍøÕ¾»òÖ¸¶¨ÏÂÔØÇþµÀ£¬ÏÂÔØÈËÆÞJavaparserHDµÄ×îа汾¡£
ÇéÐÎÉèÖãºÈ·±£ÄúµÄÅÌËã»úÒѾװÖÃÁËJavaÔËÐÐÇéÐΣ¨JRE£©¡£Äú¿ÉÒÔͨ¹ýÏÂÁîÐÐÊäÈëjava-versionÀ´¼ì²éÊÇ·ñÒѾװÖá£ÈôÊÇûÓÐ×°Ö㬿ÉÒÔǰÍùJava¹Ù·½ÍøÕ¾ÏÂÔØ²¢×°Öá£
ÉèÖÃÇéÐαäÁ¿£º½«JavaµÄ×°Ö÷¾¶Ìí¼Óµ½ÏµÍ³µÄÇéÐαäÁ¿ÖУ¬ÒÔÈ·±£ÏµÍ³¿ÉÒÔ׼ȷŲÓÃJavaÔËÐÐʱÇéÐΡ£
²âÊÔÔËÐУºÏÂÔØ²¢½âѹÈËÆÞJavaparserHDºó£¬¿ÉÒÔͨ¹ý±àдһ¸ö¼òÆÓµÄ²âÊÔ´úÂëÀ´ÑéÖ¤ÆäÊÇ·ñÕý³£ÔËÐС£
2½¹µã¹¦Ð§
¶àÃûÌÃÖ§³Ö£ºÈËÆÞJavaparserHDÄܹ»Ê¶±ð²¢ÆÊÎö¶àÖÖÖÐÎÄ×ÖÄ»ÃûÌã¬È·±£ÎÞÂÛÎļþÃûÌÃÔõÑù£¬¶¼Äܹ»ÇáËÉ´¦Öóͷ£¡£¸ßЧÆÊÎö£º¹¤¾ß½ÓÄÉÁËÏȽøµÄÆÊÎöËã·¨£¬Äܹ»¿ìËÙÌáÈ¡×ÖÄ»ÐÅÏ¢£¬´ó´óÌá¸ßÁË´¦Öóͷ£ËÙÂÊ¡£×ÖĻͬ²½£ºÄÚÖÃͬ²½¹¦Ð§£¬¿ÉÒÔ׼ȷµ÷½â×ÖÄ»ÓëÊÓÆµµÄͬ²½£¬È·±£×ÖÄ»ÓëÊÓÆµµÄÍêÉÆÅäºÏ¡£
ת»»¹¦Ð§£ºÖ§³Ö¶àÖÖ×ÖÄ»ÃûÌõÄת»»£¬Èç.srtÃûÌÿÉÒÔת»»Îª.assÃûÌ㬲¢ÇÒ±£´æ×ÖÌå¡¢ÑÕÉ«µÈ¸ß¼¶ÌØÕ÷¡£
¶àÏ̴߳¦Öóͷ£
importcom.example.subtitleparser.SubtitleParser;importjava.util.concurrent.ExecutorService;importjava.util.concurrent.Executors;importjava.util.concurrent.TimeUnit;publicclassMultiThreadedSubtitleExample{publicstaticvoidmain(Stringargs)throwsInterruptedException{SubtitleParserparser=newSubtitleParser();Stringfiles={"path/to/your/srt/file1.srt","path/to/your/srt/file2.srt"};ExecutorServiceexecutorService=Executors.newFixedThreadPool(2);for(Stringfile:files){executorService.submit(()->{parser.loadSubtitle(file);for(SubtitleEntryentry:parser.getSubtitleEntries()){System.out.println("StartTime:"+entry.getStartTime());System.out.println("EndTime:"+entry.getEndTime());System.out.println("Text:"+entry.getText());System.out.println();}});}executorService.shutdown();executorService.awaitTermination(1,TimeUnit.MINUTES);}}
2¸ßЧ´¦Öóͷ£´ó¹æÄ£×ÖÄ»Îļþ
¹ØÓÚÐèÒª´¦Öóͷ£´ó¹æÄ£×ÖÄ»ÎļþµÄÓû§£¬¿ÉÒÔ½èÖúÒÔϼ¼ÇÉÀ´Ìá¸ßЧÂÊ£º
ÅúÁ¿´¦Öóͷ££ºÖ§³ÖÅúÁ¿´¦Öóͷ£¶à¸ö×ÖÄ»Îļþ£¬¿ÉÒÔͬʱ¾ÙÐÐÆÊÎöºÍת»»£¬½ÚԼʱ¼ä¡£×Ô½ç˵¾ç±¾£ºÊ¹ÓÃÄÚÖõľ籾¹¦Ð§£¬±àд×Ô½ç˵½ÅÔÀ´ÊµÏÖÖØ´óµÄ×ÖÄ»´¦Öóͷ£Ê¹Ãü¡£¶àÏ̴߳¦?Àí£º³ä?·ÖʹÓöàÏß³ÌÊÖÒÕ£¬¼ÓËÙ´¦Öóͷ£ËÙÂÊ£¬ÓÈÆäÊÇÔÚ´¦Öóͷ£´ó?¹æÄ£Êý¾Ýʱ¡£
×Ô½ç˵ÆÊÎöÂß¼
importcom.example.subtitleparser.SubtitleParser;importcom.example.subtitleparser.SubtitleEntry;publicclassCustomSubtitleExample{publicstaticvoidmain(Stringargs){SubtitleParserparser=newSubtitleParser();parser.loadSubtitle("path/to/your/srt/file.srt");for(SubtitleEntryentry:parser.getSubtitleEntries()){if(entry.getText().contains("ÌØ¶¨Òªº¦×Ö")){System.out.println("StartTime:"+entry.getStartTime());System.out.println("EndTime:"+entry.getEndTime());System.out.println("Text:"+entry.getText());System.out.println();//¿ÉÒÔÔÚÕâÀïÌí¼Ó¸ü¶àµÄ×Ô½ç˵´¦Öóͷ£Âß¼}}}}ÔÚÉÏÊö´úÂëÖУ¬ÎÒÃÇÆ¾Ö¤×ÖÄ»Îı¾ÖÐÊÇ·ñ°üÀ¨Ìض¨Òªº¦×ÖÀ´¹ýÂ˺ʹ¦Öóͷ£×ÖÄ»ÌõÄ¿£¬ÊµÏÖÁË×Ô½ç˵ÆÊÎöÂß¼¡£
4¸ß¼¶×ÖÄ»´¦Öóͷ£
¹ØÓÚÐèÒª¸ß¼¶×ÖÄ»´¦Öóͷ£¹¦Ð§µÄÓû§£¬ÒÔϼ¼ÇÉ»áºÜÊÇÓÐÓãº
ÃûÌÃת»»£ºÊ¹ÓÃת»»¹¦Ð§£¬½«×ÖÄ»´ÓÒ»ÖÖÃûÌÃת»»ÎªÁíÒ»ÖÖÃûÌã¬È罫.srtת»»Îª.ass£¬ÒÔÏíÊܸ߼¶×ÖÄ»ÌØÕ÷¡£×ÖÌåÓëÑÕÉ«ÉèÖ㺿ÉÒÔ×Ô½ç˵×ÖÌå¡¢¾Þϸ¡¢ÑÕÉ«µÈ×ÖÄ»ÏÔÊ¾ÌØÕ÷£¬Ìá¸ßԢĿÌåÑé¡£Ìí¼ÓÌØÐ§£ºÖ§³ÖÌí¼Ó×ÖÄ»ÌØÐ§£¬ÈçÉÁׯ¡¢½¥Èë½¥³öµÈ£¬Ê¹×ÖĻԽ±¬·¢¶¯¡£
У¶Ô£º²ñ¾²(f3J1ePQDlzHhwh44q38w4Ima2E3XrDq)



