Index: branches/DynamicVehicleRouting/HeuristicLab.PDPSimulation/3.3/Parsers/DefaultDynPDPParser.cs
===================================================================
--- branches/DynamicVehicleRouting/HeuristicLab.PDPSimulation/3.3/Parsers/DefaultDynPDPParser.cs	(revision 8670)
+++ branches/DynamicVehicleRouting/HeuristicLab.PDPSimulation/3.3/Parsers/DefaultDynPDPParser.cs	(revision 8675)
@@ -20,63 +20,63 @@
 #endregion
 
-using System;
-using System.Collections.Generic;
 using System.IO;
 using System.Text.RegularExpressions;
 
 namespace HeuristicLab.PDPSimulation {
-  class DefaultDynPDPParser: DynPDPParser {
-    public DefaultDynPDPParser(string file): base(file) {
+  class DefaultDynPDPParser : DynPDPParser {
+    public DefaultDynPDPParser(string file)
+      : base(file) {
     }
 
     public override void Parse() {
       string line;
-      Regex reg = new Regex(@"-?\d+");
+      Regex reg = new Regex(@"-?(\d+\.\d+|\d+)");
       MatchCollection m;
 
-      StreamReader reader = new StreamReader(file);
+      using (var reader = new StreamReader(file)) {
 
-      line = reader.ReadLine();
-      problemName = line;
+        line = reader.ReadLine();
+        problemName = line;
 
-      line = reader.ReadLine();
-      int vehicleCount = int.Parse(line);
+        line = reader.ReadLine();
+        int vehicleCount = int.Parse(line);
 
-      for (int i = 0; i < vehicleCount; i++) {
+        for (int i = 0; i < vehicleCount; i++) {
+          line = reader.ReadLine();
+          m = reg.Matches(line);
+          Vehicle v = new Vehicle();
+
+          v.xCoord = double.Parse(m[0].Value);
+          v.yCoord = double.Parse(m[1].Value);
+          v.capacity = double.Parse(m[2].Value);
+          v.readyTime = double.Parse(m[3].Value);
+          v.dueTime = double.Parse(m[4].Value);
+
+          vehicles.Add(v);
+        }
+
         line = reader.ReadLine();
+        int orderCount = int.Parse(line);
         m = reg.Matches(line);
-        Vehicle v = new Vehicle();
+        for (int i = 0; i < orderCount; i++) {
+          line = reader.ReadLine();
+          m = reg.Matches(line);
+          Order o = new Order();
 
-        v.xCoord = double.Parse(m[0].Value);
-        v.yCoord = double.Parse(m[1].Value);
-        v.capacity = double.Parse(m[2].Value);
-        v.readyTime = double.Parse(m[3].Value);
-        v.dueTime = double.Parse(m[4].Value);
+          o.revealedTime = double.Parse(m[0].Value);
+          o.pickupXCoord = double.Parse(m[1].Value);
+          o.pickupYCoord = double.Parse(m[2].Value);
+          o.deliveryXCoord = double.Parse(m[3].Value);
+          o.deliveryYCoord = double.Parse(m[4].Value);
+          o.demand = double.Parse(m[5].Value);
+          o.pickupServiceTime = double.Parse(m[6].Value);
+          o.pickupReadyTime = double.Parse(m[7].Value);
+          o.pickupDueTime = double.Parse(m[8].Value);
+          o.deliveryServiceTime = double.Parse(m[9].Value);
+          o.deliveryReadyTime = double.Parse(m[10].Value);
+          o.deliveryDueTime = double.Parse(m[11].Value);
 
-        vehicles.Add(v);
-      }
-
-      line = reader.ReadLine();
-      int orderCount = int.Parse(line);
-      m = reg.Matches(line);
-      for (int i = 0; i < orderCount; i++) {
-        line = reader.ReadLine();
-        m = reg.Matches(line);
-        Order o = new Order();
-
-        o.revealedTime = double.Parse(m[0].Value);
-        o.pickupXCoord = double.Parse(m[1].Value);
-        o.pickupYCoord = double.Parse(m[2].Value);
-        o.deliveryXCoord = double.Parse(m[3].Value);
-        o.deliveryYCoord = double.Parse(m[4].Value);
-        o.demand = double.Parse(m[5].Value);
-        o.pickupServiceTime = double.Parse(m[6].Value);
-        o.pickupReadyTime = double.Parse(m[7].Value);
-        o.pickupDueTime = double.Parse(m[8].Value);
-        o.deliveryServiceTime = double.Parse(m[9].Value);
-        o.deliveryReadyTime = double.Parse(m[10].Value);
-        o.deliveryDueTime = double.Parse(m[11].Value);
-
-        orders.Add(o);
+          orders.Add(o);
+        }
       }
     }
