Police said they were called to a downtown library around 10 a.m. on Monday following reports of a disturbance.
They said one man was acting belligerent and screaming at staff.
He left the library a short time later, yet investigators said he still acted belligerent and yelled at staff after speaking to him.
As the man walked away, he pulled down his pants and reportedly exposed his behind to everyone, including several children.
A 31-year-old has been charged and will make an appearance in a courtroom in Guelph on Oct 24.