`File.tsv` is a tab delimited file with 7 columns:

```bsh
cat File.tsv
1   A   J               1
2   B   K   N           1
3   C   L   O   P   Q   1

```

The following reads `File.tsv` which is tab delimited file with 7 columns, and stores the entries in an Array A.

```
while IFS=$'\t' read -r -a D; do
    A=("${A[@]}" "${D[i]}" "${D[$((i + 1))]}" "${D[$((i + 2))]}" "${D[$((i + 3))]}" "${D[$((i + 4))]}" "${D[$((i + 5))]}" "${D[$((i + 6))]}")
done < File.tsv
nA=${#A[@]}

```

```bsh
for ((i = 0; i < nA; i = i + 7)); do
    SlNo="${A[i]}"
    Artist="${A[$((i + 1))]}"
    VideoTitle="${A[$((i + 2))]}"
    VideoId="${A[$((i + 3))]}"
    TimeStart="${A[$((i + 4))]}"
    TimeEnd="${A[$((i + 5))]}"
    VideoSpeed="${A[$((i + 6))]}"
done

```

Issue
-----

Certain entries are empty in tsv files, but the empty values are skipped while reading the file.

Note
----

Is the tsv file, empty values are preceded and succeeded by a tab character.

Desired Solution
----------------

Empty values be read and stored in the array.