Zend certified PHP/Magento developer

Able to write to SD card with dd, but when reading back only null data is returned. How do I fix this?

I don’t know how this is possible, but my 400GB SD card is acting very weird. The SD card reports all 400GB to the kernel along with the serial number, but I cannot write a new MBR/GPT partition table.

Every time I attempt to use fdisk and gdisk to write the new partition table to the SD, the programs always says that there is no partition table when rerunning. I’m able to write data to the card using dd if=/dev/random of=/dev/[thesdcard], but when I go to read data cat /dev/[thesdcard] OR hexdump /dev/[thesdcard] All that is returned are null bytes (0x00).

Some articles online say to look at dmesg, but there is no errors being returned when reading or writing data. The SD card has been tried with multiple SD card readers and different computers, none of the multiple configurations I have tried work.