0

我正在尝试从文本文件中读取值。我想要':'之后的值。

这是文本文件的示例。所有行的格式都相同。数据开始前有 34 个位置。

File Name                       : IMG_1184.JPG
File Size                       : 2.1 MB
File Modification Date/Time     : 2012:07:14 11:53:18-05:00
File Permissions                : rw-rw-rw-
File Type                       : JPEG
MIME Type                       : image/jpeg
Exif Byte Order                 : Big-endian (Motorola, MM)

我尝试使用此代码:

fileID = fopen('Exif.txt');
Exif1 = textscan(fileID, '%s %s','delimiter', ':');

这适用于大多数数据,但有些数据也使用了“:”,所以这不起作用。

我尝试使用此代码:

fileID = fopen('Exif.txt');
Exif1 = textscan(fileID, '%s %s','delimiter', ': ');

这返回了一团糟。不知道为什么。一切都支离破碎。

谁能解释如何将第 35 个值放在每个字符串的末尾并将其放入数组中?

4

2 回答 2

0

Matlab中有一个功能strtrim(string)可以为您去除前导和尾随空格。尝试使用后将当时一行中的数据读入textscan函数中strtrim

于 2013-02-16T21:03:20.163 回答
0

将整行读入一个变量,然后获取第 35 个和后续字符,如下所示:

whole_line(35:end)
于 2013-02-16T22:56:07.637 回答