How to create the queue array of class from text file

In reply to chr_sue:
Hi,

After modifying the code, i am still not getting the correct output.

module testbech ();
  
class Packet ;
   
logic [31:0] addr;
logic [31:0] data;
logic [31:0] wmask;
logic [31:0] rmask;
  
  //function new ();
  //endfunction
  
endclass
  
  logic [31:0] addr_;
  logic [31:0] data_;
  logic [31:0] wmask_;
  logic [31:0] rmask_;
  
  Packet  qu[$]; 
  int fd;
  
  initial
     begin
       Packet p1;
       p1 = new ;
       fd = $fopen ("data.txt" , "r");
// $fscanf returns the number of matches, i.e. 4 in your case
       while ($fscanf (fd, "%0h %0h %0h %0h", addr_, data_, wmask_, rmask_) == 4) begin
   
        // $display ("addr %h data %h", addr_, data_);
         p1.addr = addr_;
         p1.data = data_;
         p1.wmask = wmask_;
         p1.rmask = rmask_ ;
         //$display ("addr_ %h , data_ %h wmask_ %h , rmask_ %h",p1.addr, p1.data, p1.wmask, p1.rmask);
         qu.push_back(p1);
         foreach (qu[i])
           begin
             $display ("queue of class [%d] = %h , %h, %h" , i , qu[i].addr, qu[i].data, qu[i].wmask );
         //  $display ("qu %p", qu);
          end
           p1= new ;
          p1.addr = addr_;
         p1.data = data_;
         p1.wmask = wmask_;
         p1.rmask = rmask_ ;
         //$display ("addr_ %h , data_ %h wmask_ %h , rmask_ %h",p1.addr, p1.data, p1.wmask, p1.rmask);
         qu.push_back(p1);
  end
$fclose(fd);
         foreach (qu[i])
           begin
             $display ("queue of class [%d] = %h , %h, %h , %h" , i , qu[i].addr, qu[i].data, qu[i].wmask,  qu[i].rmask);
         
          end
     end  
       
endmodule

Output:
queue of class [ 0] = f0000000 , 0000ffff, 000000ff
queue of class [ 0] = f0000000 , 0000ffff, 000000ff
queue of class [ 1] = f0000004 , 0000aaaa, 00000000
queue of class [ 2] = f0000004 , 0000aaaa, 00000000
queue of class [ 0] = f0000000 , 0000ffff, 000000ff
queue of class [ 1] = f0000004 , 0000aaaa, 00000000
queue of class [ 2] = f0000004 , 0000aaaa, 00000000
queue of class [ 3] = f0000008 , 00005555, 00000000
queue of class [ 4] = f0000008 , 00005555, 00000000
queue of class [ 0] = f0000000 , 0000ffff, 000000ff
queue of class [ 1] = f0000004 , 0000aaaa, 00000000
queue of class [ 2] = f0000004 , 0000aaaa, 00000000
queue of class [ 3] = f0000008 , 00005555, 00000000
queue of class [ 4] = f0000008 , 00005555, 00000000
queue of class [ 5] = f000000c , 00000000, 0000ffff
queue of class [ 6] = f000000c , 00000000, 0000ffff
queue of class [ 0] = f0000000 , 0000ffff, 000000ff
queue of class [ 1] = f0000004 , 0000aaaa, 00000000
queue of class [ 2] = f0000004 , 0000aaaa, 00000000
queue of class [ 3] = f0000008 , 00005555, 00000000
queue of class [ 4] = f0000008 , 00005555, 00000000
queue of class [ 5] = f000000c , 00000000, 0000ffff
queue of class [ 6] = f000000c , 00000000, 0000ffff
queue of class [ 7] = f0000010 , 0000ffff, 00000000
queue of class [ 8] = f0000010 , 0000ffff, 00000000
queue of class [ 0] = f0000000 , 0000ffff, 000000ff
queue of class [ 1] = f0000004 , 0000aaaa, 00000000
queue of class [ 2] = f0000004 , 0000aaaa, 00000000
queue of class [ 3] = f0000008 , 00005555, 00000000
queue of class [ 4] = f0000008 , 00005555, 00000000
queue of class [ 5] = f000000c , 00000000, 0000ffff
queue of class [ 6] = f000000c , 00000000, 0000ffff
queue of class [ 7] = f0000010 , 0000ffff, 00000000
queue of class [ 8] = f0000010 , 0000ffff, 00000000
queue of class [ 9] = f0000014 , 0000aaaa, 00000ff0
queue of class [ 10] = f0000014 , 0000aaaa, 00000ff0
queue of class [ 0] = f0000000 , 0000ffff, 000000ff , 000000ff
queue of class [ 1] = f0000004 , 0000aaaa, 00000000 , 000000ff
queue of class [ 2] = f0000004 , 0000aaaa, 00000000 , 000000ff
queue of class [ 3] = f0000008 , 00005555, 00000000 , 000000ff
queue of class [ 4] = f0000008 , 00005555, 00000000 , 000000ff
queue of class [ 5] = f000000c , 00000000, 0000ffff , 000000ff
queue of class [ 6] = f000000c , 00000000, 0000ffff , 000000ff
queue of class [ 7] = f0000010 , 0000ffff, 00000000 , 000000ff
queue of class [ 8] = f0000010 , 0000ffff, 00000000 , 000000ff
queue of class [ 9] = f0000014 , 0000aaaa, 00000ff0 , 000000ff
queue of class [ 10] = f0000014 , 0000aaaa, 00000ff0 , 000000ff
queue of class [ 11] = f0000014 , 0000aaaa, 00000ff0 , 000000ff