A 27-year-old man allegedly had his eye socket fractured in the incident.
Stokes thanked his family and supporters in a Twitter statement, saying he was "keen to have the opportunity to clear" his name.
"I gave a full and detailed account of my actions to the police on day one - the same day as the incident - and have co-operated at each step of the police inquiry.
"The (Crown Prosecution Service's) decision to charge me, as well as Ryan Ali and Ryan Hale, at least means that my account of what happened that night can come out in court and be made public.
"Until then, my focus is very much on cricket."
The England and Wales Cricket Board says it is aware Stokes has been charged and will decide within 48 hours whether will be able to represent England.
However, Stokes has the board's permission to play in the Indian Premier League, which starts in April.
The Crown Prosecution Service says Stokes had been charged alongside Ali, 28, and Hale, 26, who are all due to appear before Bristol Magistrates' Court on a date to be fixed.
Ben Stokes timeline
25 September – Stokes and teammate Alex Hales are involved in an incident outside a Bristol nightclub which left a man needing hospital treatment for injuries. Stokes is arrested then released under investigation.
27 September – Stokes suffers minor finger fracture on his right hand but is still included in England's 16-man Ashes squad.
27 September – Footage of the brawl, which allegedly shows Stokes throwing punches is released by British newspaper The Sun.
28 September - The ECB announces Stokes and Hales will not be considered for selection for England until further notice.
11 October – Sportswear brand New Balance drops Stokes from sponsorship deal. Stokes apologises to Katie Price for a video that shows him imitating her disabled son.
28 October – England fly to Australia for the Ashes without Stokes.
23 November – Australia beat England in the first Ashes Test in Brisbane.
27 November – The ECB issues a statement denying Stokes is joining England's squad after picture supposedly showing him at Heathrow Airport appears on Twitter.
29 November – Stokes arrives in New Zealand to play for Canterbury Kings.
29 November – Avon & Somerset Police complete their investigation and send their findings to the Crown Prosecution Service.
4 December – It is announced that Hales will avoid facing criminal charges. The ECB announces that Hales is available for selection.
6 December – Stokes is named in England's ODI squad for the five-match series against Australia.
23 December – Stokes returns to England after his spell with Canterbury Kings.
11 January – Stokes is named in England's test squad to face New Zealand.