One woman says she's thankful she's alive after Toronto firefighters spent hours Wednesday battling a three-alarm blaze that ripped through a building in Yorkville.

Flames were shooting through the roof when firefighters arrived at the scene of a fire at 84 Yorkville Ave. around 8 a.m.

Falon, a woman who says she lives in an apartment in the building, told CP24 she woke up to a fireman "hacking down my door with an axe."

She said she was told she had one minute to grab her wallet and keys before firefighters carried her down the stairs and out of the building.

"I'm shaken up, but I'm just really glad to be alive," she said.

To battle the blaze, firefighters climbed onto the roof and broke through the second-storey windows. Others on the ground rushed to the closest fire hydrant, right in front of the building, but it was frozen solid. They had to use a hydrant further down the street.

"It's a common problem. A little bit of leakage through the valve stem and they can freeze up," Toronto Fire Services Division Commander Andrew Kostiuk told CTV Toronto.

"Our crews are trained to react to that and the beauty of downtown Toronto is there's a lot of hydrants."

Smoke filled the air as firefighters worked for hours to control the blaze, trying to keep it isolated from nearby buildings. Kostiuk said the fire was difficult to fight because it was in the middle of a long, narrow building.

As the water from their hoses filled the air, firefighters had to pause to wipe ice off the visors of their helmets. Crews worked in shifts, taking breaks to warm up in TTC buses being used as shelters.

At one point, fire crews were ordered to evacuate the building because it became too dangerous. They were instructed to gain control of the flames outside before re-entering the building.

Though there were still some small smouldering fires inside the building, officials said the fire was mostly under control by Wednesday afternoon.

The fire marshal will investigate the cause of the fire when it's safe to examine the scene.

A restaurant, eyeglasses store, beauty salon and spa were all tenants of the building.

Kostiuk said that two women were working at the spa when the fire alarm sounded, and both escaped. They were treated for smoke inhalation by paramedics at the scene.

Man arrested at scene of fire

Also Wednesday, Toronto police arrested a 54-year-old man who they say assaulted a firefighter at the scene and then got into a scuffle with an officer.

Police spokesperson Const. Wendy Drummond confirmed the man has been charged with assault and obstructing a peace officer.

Kostiuk told CP24 the man is a contractor who was working inside the building when firefighters rushed in. He said the man shoved at least one of the firefighters, and a police officer was taken to hospital for a shoulder injury received during the scuffle.

With files from CTV Toronto's John Musselman