According to the state Attorney General's Office and the State Code, there is no length law. However, local jurisdictions have their own laws. I know that any knife over 6" in Richmond must be registered. Most schools, and private property (malls, banks, etc.) also have their own rules.
It also depends on how the courts choose to interpret the law. While butterfly knives sre legal to own, they cannot be carried in a pocket. They are considered a "like weapon to a dirk", and thus are illegal to conceal (ie. put in your pocket). I suppose they could be carried in a sheath on your belt.
I have found out the most local and state police do not know the law. If you have a knife confiscated, get the officer's name, badge # and also get a receipt. That way it is less likely to just disappear.
Hope this helps,
Pam