There are several possible causes of low iron levels in the blood that can persist for years. A common cause is an inadequate intake of iron-rich foods, such as red meat, beans, dark leafy greens, and fortified cereals. Other causes include a lack of vitamin C, which helps the body absorb iron...