One of my sons had this problem when he was renting an apartment in an older building. Several of his good wool sweaters were damaged by moths. My mother, who was way more familiar with this problem than I was, gave us this advice:
Always wash or dry clean woolen items before storing them. Cleaning kills any eggs or larvae that may be present and also removes perspiration odors that are attractive to the pests. Store items in sealed plastic bags or containers with tight-fitting lids. Moth balls which give off lethal vapors only work if the vapors are concentrated in a confined area, so it's important to have a good seal. Contrary to popular belief, cedar closets or chests are seldom effective by themselves, because the seal is insufficient to maintain a lethal or repellent concentration of the volatile oil of cedar.
Once moths have infested a storage area, you need to remove all the items to find the source. Infested items should be thrown out, laundered or dry cleaned. Vacuuming will get rid of the larvae as well as hair and lint which could support future infestations. You'll need to pay close attention to vacuuming the edges of carpets, along baseboards, underneath furniture, inside closets and other "quiet" areas where clothes moths prefer to feed. And make sure that you dispose of the vacuum contents in a sealed bag to avoid re-infestation. You can also use a household Insecticide in the infested areas after vacuuming. Spray along baseboards, underneath furniture and other likely areas of infestation.
According to my mother, clothes moths were a fairly common problem in the first half of the 20th century, but became much rarer once synthetics became more popular. Her advice worked. My son managed to get rid of the moths in his apartment (and learned how to use a vacuum properly at the same time!), find a tailor who was able to restore his sweaters, and bought plastic storage containers with tight-fitting lids to store his sweaters in the future.