Während des Zweiten Japanisch-Chinesischen Krieges kommandierte Zhang zunächst die 8. Armeegruppe in der Schlacht um Shanghai. 1938 kämpfte er in der Schlacht um Wuhan gegen die Japaner. Von 1943 bis Herbst 1944 hatte er den Oberbefehl des 4. Militärbezirks in Guangdong und Guangxi. Im Oktober 1944 unterlag er den japanischen Truppen der 6. Regionalarmee in der Schlacht von Guilin und Liuzhou. Nach dem Verlust von Nanning wurde er im November 1944 zum Kommandeur der 2. Frontarmee in West Guixi ernannt.