Just thought of another way to do what you are after last night. Put 1K resistors between each of the pins, with the last connected to ground and the last on the other end connected to +5V. Then take the common and connect it to an analogue input and read the voltage.
Will I need to use 1 arduino port for every pin in the switch?
The other way uses all the same value and has 8 resistors in seriese between the supplies, say all at 1k. Then each node is connected to a diffrent switch position and the common is connected to the analogue input.