My printing business is called upon to print invitations containing dates. It is my contention that the year 2004 should be written "two thousand four", not "two thousand and four." After all, we didn't say "nineteen and ninety-nine." Am I correct?
Americans say "Two thousand four".
The British say "Two thousand and four".

This is true of numbers generally, not just years. For example, 123 =
"One hundred twenty three" (in America)
"One hundred and twenty three" (in Britain)

the 2004 is different from 1999

As the 2004 is pronounced with 2000 first, so followed by ' four ' or ' and four ' is OK. Since four is involved in 2000. In fact, using ' and ' is more meaningful.

1999, we pronounce the two digits in front first, then to use ' and ' is not correct though.

Well, just a personal opinion. Yet to be confirmed Emotion: stick out tongueEmotion: stick out tongue
 rommie's reply was promoted to an answer.