While Bank of America has arrangements with select banks in select countries (e.g. Deutsche Bank only in Germany) to avoid ATM fees... users of a Charles Schwab checking account pay No ATM fees Anywhere (how I get my euros now anywhere in Europe) - http://www.schwab.com/checking
If you can pay using a credit card in a foreign country, opt for being charged in the local currency instead of it being “converted” at a poor-exchange rate to US dollars. To avoid currency conversion fees from your credit card company, choose a card like Capital One that does not charge the conversion fee.
See also the frugal traveler advice