Honestly- not to be rude, but please be sure you know the facts before misadvising someone else; you've gotten a lot wrong here:
Linux systems don't create partitions
Of course Linux systems create partitions. Linux has a version of fdisk, as well as a few other partitioning utilities.
in order to have partitions, and boot different OS's from them, Windows needs to be installed first.
No, but it does make life easier. Windows cannot recognise a Linux installation, and therefore cannot configure it's bootloader to boot an existing Linux installation; you have to manual configure your boot.ini after you install Windows if you want it to boot Linux also. A Linux installation, on the other hand, can detect your existing Windows install and configure that in the Linux bootloader (usually Lilo or Grub).
Linux cannot read Windows and vice-versa, that is why each OS can only see the drive associated with that particular OS.
Not true at all. Windows does not support
any foriegn filesystems, incuding those used in the UNIX world, without installing third-party utilities. Linux, however, can
natively read from and write to many different filesystems, including Window's FAT and FAT32; it has full read support for NTFS, and some write support (currently). One reason that a Windows partition might not automagically show up under Linux is that the option to mount the Win partition at bootup was chosen during the Linux installation. Any Windows partition can be configured to auto-mount under Linux by modifying Linux's /etc/fstab file.
...But when you reinstalled Windows, you probably overwrote the boot files for the dual boot.
This part is absolutely correct. Operating systems will utilize part of the Master Boot Record for their bootloader. When you install a second OS in a dual-boot situation, it will overwrite the original OS's bootloader info in the MBR with that of its own.