I want to install both XP and Linux on my PC, i know that i need unpartioned and unformatted hard disk space for the OSs, but the question is is it necessary for my other partitions to be reformatted as FAT32 file system because my old file system is NTFS and i don't want to lose my data in those partitions..
Modern Linux Distros read from NTFS just fine. You can still run into problems writing to such partitions though. There are also tools to shrink NTFS partitions, but I would advise against it myself -_-. Anyway, since I'm guessing you already have multiple partitions just install XP on the first bootable partition while leaving some space for Linux. When you setup Linux just install it on the available free space assuming you left enough of course. You need to install XP on the first partition though since it will see that partition as the "C:" drive and tries to default that. Vista and Win 7 don't have that problem as they consider the partitions they are installed on as the "C:" drives while linux will consider it's installed partition the "root" partition.
By the way, most linux distro's generally want to setup a root, home, and swap partition. The Root partition is where the programs are installed, the home partition is where your personal files are kept, and the swap partition is simply for swapping data in and out of memory. You can set your home directory to your root partition rather than creating a separate home partition in an effort to better utilize your space..