将具有两个不同分隔符的 txt 文件加载到结构中

Load txt-file with two different delimiters into struct

我在 Matlab 中加载 .txt 文件时遇到问题。主要问题是行数不相等。我会附上文件,这样您就可以更清楚地看到我要说的内容。首先,该文件包含有关图中每个节点的信息。一行有这样的信息:

1|1|EL_1_BaDfG|4,41|5,1|6,99|8,76|9,27|13,88|14,19|15,91|19,4|21,48...

意思是:

id|type|name|connected_to, weight|connected_to, weight| and so on..

我试图使用 fscanf 函数,但它只将整行读取为一个字符串。我想如何将它分成包含我需要的信息的结构?

此致,

德扬

Here, you can see file that I'm trying to load

Stewie 答案的替代方法是使用:

fgetl   to read each line

然后使用

strread (or textscan) to split the string 

首先使用 | 分隔符 - 然后在包含 , 的子部分再做一次。