With the increasing demand for wireless location services, it is of great interest to reduce the deployment cost of positioning systems. For this reason, indoor positioning based on WiFi has attracted great attention. Compared with the received signal strength indicator (RSSI), channel state information (CSI) captures the radio propagation environment more accurately. However, it is necessary to take signal bandwidth, interferences, noises, and other factors into account for accurate CSI-based positioning. In this paper, we propose a novel dictionary filtering method that uses the direct weight determination method of a neural network to denoise the dictionary and uses compressive sensing (CS) to extract the channel impulse response (CIR). A high-precision time-of-arrival (TOA) is then estimated by peak search. A median value filtering algorithm is used to locate target devices based on the time-difference-of-arrival (TDOA) technique. We demonstrate the superior performance of the proposed scheme experimentally, using data collected with a WiFi positioning testbed. Compared with the fingerprint location method, the proposed location method does not require a site survey in advance and therefore enables a fast system deployment.