2014-01-28 2 views
0

Coding в Objective-C, я добавления текста к объекту NSTextView имени subCap в моем коде, как так:Сравнение NSString с NSTextView хребта до прилагая

[[[_subCAP textStorage] mutableString]appendString:[NSString stringWithFormat:@"%@", subcapLine]]; 

subcapLine будет иметь два значения временного кода, такие как: «01: 00: 00: 00 01: 00: 01: 00» разделены одним пробелом, затем символом новой строки (\ n), затем строкой типа «ONC314_001_001», за которой следуют два символа новой строки (\ n \ n).

В результате будет создан список, аналогичный:

01: 00: 00: 00 01: 00: 01: 00
ONC314_001_001

01: 00: 01: 00 01:00: 2:00
ONC314_001_002

01: 00: 02: 00 01: 00: 03: 00
ONC314_001_003

и т.д., и т.д., и т.д.

Это файл подзаголовка для размещения текста (строки ONC314) в соответствующее время в видеофайле, как указано временными кодами.

Однако я решил, что существует нечетная совокупность обстоятельств, когда пара временного кода может быть такой же, как и предыдущая пара временного кода, и если это произойдет, я хочу пропустить добавление этой строки.

Итак, мой вопрос заключается в том, что временные коды всегда состоят из 11 символов, разделенных пробелом, может кто-нибудь подумать о том, как я могу легко захватить предыдущую пару ТС и сравнить ее с моей текущей парой в subcapLine I готовится к присоединению? Проблема заключается в том, что текст подзаголовка может быть случайной длиной. В моем примере они одинаковы, но это не всегда так.

Если мне нужно проверить, прежде чем компилировать мою subcapLine, я тоже могу это сделать, но я просто подумал, что может быть более гладким использовать какой-то диапазон, чтобы захватить предыдущую пару ТС из последней написанной строки в объекте NSTextView и сравнить (опять же, используя диапазон?) против TC в строке, которую я собираюсь добавить?

Мысли и предложения очень ценится.

Крис Конли

ответ

1

При добавлении таймкод хранения длины строки текстового поля непосредственно перед добавить таймкод, так что вы будете иметь смещение к таймкодом вы собираетесь добавить.

Затем перед добавлением нового временного кода вы можете просто использовать предыдущее смещение, которое вы сохранили, чтобы извлечь подстроку и провести сравнение строк и посмотреть, идентичны ли временные коды.

Это должно позволять всегда иметь смещение к предыдущему временному коду независимо от длины субтитров.

+0

А теперь это звучит как очень распространенный способ сделать это. Я просто ЗНАЮ, что у кого-то будет предложение, что мой сон лишил ума, не придумал. Спасибо! – ConleeC

Смежные вопросы