Я пишу файл .jpg в каталог Documents моего приложения следующим образом:
NSData *img = UIImageJPEGRepresentation(myUIImage, 1.0);
BOOL retValue = [img writeToFile:myFilePath atomically:YES];
Позже я загружаю это изображение обратно в UIImage, используя:
UIImage *myImage = [UIImage imageWithContentsOfFile:path];
Я знаю, что это работает, потому что я могу рисовать изображение в ячейке таблицы и это нормально. Теперь, если я попытаюсь использовать UIImageJPEGRepresentation (myImage, 1.0), отладчик распечатает следующие строки:
<Error>: Not a JPEG file: starts with 0xff 0xd9
<Error>: Application transferred too few scanlines
И функция вернет nil. Кто-нибудь знает, почему это могло произойти? Я ничего не делал для манипулирования данными UIImage после их загрузки. Я просто предоставил UIImage для просмотра изображения в ячейке. Я установил свойства представления изображения таким образом, чтобы все изображения в ячейках были выстроены в одну линию и имели одинаковый размер, но я не думаю, что это должно иметь какое-либо отношение к возможности преобразования UIImage в NSData. Назовем их Property HugeString и Property Metadata. У меня есть этот класс U, который имеет ...
У меня есть Lazy
, где T - это класс с огромной строкой и метаданные о файлах.
Назовем их Свойство >
HugeString
и Свойство Метаданные
У меня есть этот класс U, который, помимо прочего, имеет такое же свойство HugeString
. Мне нужно преобразовать Lazy
в >
Lazy
без загрузки всего материала. >
Возможно ли это?
Здесь я создаю свой список, и внутри этого метода я получаю информацию о файле и самом файле:
entity.VersionedItems =
new Lazy<List<VersionedItemEntity>>(
() => VersionedItemEntity.GetFromTFSChanges(entity,chng.Changes));
Это то, что я хочу делать (комментарий)
ChangesetList.Add(
new HistoryLogEntryModel()
{
Revision = changeset.Changeset.ToString(),
Author = changeset.User,
Date = changeset.Date.ToString("dd/MM/yyyy"),
Message = changeset.Comment,
//VersionedItems = changeset.VersionedItems
}
Но HistoryLogEntryModel имеет другую версию VersionedItems . И мне нужно преобразовать некоторые переменные. Если бы я преобразовал одно в другое, это загрузило бы все, и это было бы ненужным и медленным.
Это правильный подход? Как еще я мог этого добиться?
спасибо в нареч.
~