program matrix_lesen_testen
  integer :: j,k,l
  integer, dimension(2,3,4) :: a
  open(1,file='matrix_lesen.dat',status='old')
  read(1,fmt=*) a
  do l=1,4
    do k=1,3
      do j=1,2
        write(*,fmt=*) 'a(',j,k,l,') = ',a(j,k,l)
      end do
    end do
  end do
  !Ergebnis der Zuordnung:
  ! a(1,  1,  1) = 1
  ! a(2,  1,  1) = 2
  ! a(1,  2,  1) = 3
  ! a(2,  2,  1) = 4
  ! a(1,  3,  1) = 5
  ! a(2,  3,  1) = 6
  ! a(1,  1,  2) = 7
  ! a(2,  1,  2) = 8
  ! a(1,  2,  2) = 9
  ! a(2,  2,  2) = 10
  ! a(1,  3,  2) = 11
  ! a(2,  3,  2) = 12
  ! a(1,  1,  3) = 13
  ! a(2,  1,  3) = 14
  ! a(1,  2,  3) = 15
  ! a(2,  2,  3) = 16
  ! a(1,  3,  3) = 17
  ! a(2,  3,  3) = 18
  ! a(1,  1,  4) = 19
  ! a(2,  1,  4) = 20
  ! a(1,  2,  4) = 21
  ! a(2,  2,  4) = 22
  ! a(1,  3,  4) = 23
  ! a(2,  3,  4) = 24
  write(*,fmt=*) ' '      !Leerzeile
  write(*,fmt=*) a        !alle Zahlen in eine Zeile, kein Zeilenumbruch
  close(1,status='keep')
end program matrix_lesen_testen

!Die zu lesenden Daten einer Datei werden sequentiell, 
!also ohne Verwendung von Zeilenumbruechen oder Leerzeilen
!von links nach rechts und von oben nach unten gelesen.
!Die Zuordnung zu einem mehrdimensionalen Feld erfolgt dann so, 
!dass zuerst der erste, dann der zweite dann der dritte Index, 
!etc. laeuft. Kommentare duerfen nicht vorkommen. Die Daten koennen
!durch Leerzeichen oder durch Komma voneinander getrennt werden.

!Die zu lesende Datei hatte (ohne Ausrufezeichen) 
!den folgenden Inhalt:
!1 2 3 4 5 6 7 8 9 
!10 11 12 13 14 15 16 17 18 19 20
!
!21 22 23 24
