רשימה נפתחת עם ערים+רחובות c# - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

רשימה נפתחת עם ערים+רחובות c#


eido300

Recommended Posts

ישנם המון תוכנות/אתרים שצריך לבחור בהם עיר/רחוב, וברגע שמקלידים אות אחת הוא מציע לך את שמות הערים/רחובות שמתחילים באות הזאת, איך עושים את זה? יש איזו שהיא רשימה שאפשר להשתמש בה? כי להתחיל לכתוב כל עיר ואת כל הרחובות זה לא בא בחשבון.

עריכה: מצאתי את זה

http://data.gov.il/dataset/321

זה יכול לעזור לי?

קישור לתוכן
שתף באתרים אחרים

ודאי שזה יעזור לך, תוריד את קובץ ה-xml ואז תוכל לטעון אותו לתוכנה שלך.

תסתכל על הקובץ כדי לראות את המבנה שלו ואיזה ערכים אתה צריך לקרוא.

נ.ב. אני רואה שמוגדרים בקובץ אלמנטים בשמות בעברית במקום באנגלית ("סמל_ישוב", "שם_רחוב"...) אז אני אציע לך להחליף את כולם לאנגלית אחרי שאתה מוריד את הקובץ.

קישור לתוכן
שתף באתרים אחרים

תודה.

כרגע אני לא ליד מחשב אז אני לא יכול לראות איך זה בנוי שם, מחר כנראה אני אוכל לעשות את זה.

וכדי להשתמש בזה אני רוצה ליצור מחלקה שתכיל string של שם העיר ועוד list שיכיל את שמות הרחובות, וליצור list מהמחלקה הזאת, וכל פעם שמקלידים אות לעשות חיפוש ברשימה (בstring( ולהציע, וכשמקלידים שם של רחוב לעשות חיפוש ברשימה שנמצאת באותו תא שהstring של שם העיר נמצא בו (מקווה שהצלחתי להסביר את זה כמו שצריך...)

זו דרך נכונה או או שכדאי בדרך שונה?

קישור לתוכן
שתף באתרים אחרים

זה לא בזבזני קצת? הרי כל פעם שמקלידים אות (ולאו דווקא אות ראשונה, אלא בכל הקלדה) הוא יעבור על הרשימה מההתחלה, אם נעשה כמה listים שכל אחד ירכז את כל הערים (כנ"ל לגבי רחובות) שמתחילים באות מסויימת ובעזרת משפט switch נפנה אותו לlist הנכון (לא חייבים משפט switch אפשר גם לעבור עם foreach) ושם הוא יחפש את אותה העיר (או הרחוב) זה יצמצם את כמות המעברים, האם הפיתרון הזה באמת יותר חסכני?

קישור לתוכן
שתף באתרים אחרים

אתה צודק, ואפילו מישהו כבר חשב על הרעיון הזה לפניך:

http://en.wikipedia.org/wiki/Trie

אבל להתחיל לממש Trie עכשיו זה סתם מסובך לדעתי. אפשר לבצע חיפוש על הרשימה הרבה יותר בקלות בלי לעבור עליה מההתחלה (*אהם*חיפושבינארי*אהם*).

קישור לתוכן
שתף באתרים אחרים

חחח, נכון, צודק.

האמת שחשבתי על חיפוש בינארי, אז משום מה מצאתי בו פגם כלשהו, עכשיו כשאני חושב עליו שוב, אני לא מוצא את הבעיה...

בכל מקרה, אני לא מצליח לפתוח את הקובץ, הוא טוען שיש בו תו לא חוקי, את התגים שיניתי לאנגלית, הוא כותב על התוכן שבעברית שהוא בעייתי, מה עושים?

הנה חלק מה ששיניתי, יש לך הצעה מה לעשות?

קישור לתוכן
שתף באתרים אחרים

אוףףף אני לא בבית ויש כאן באזור רק מחשב מעאפן אחד שאפילו לאינטרנט הוא לא מחובר, התקנתי במיוחד visual studio 2010 על דיסק קשיח (נייד) כדי שאני אוכל לעבוד על התוכנה גם במחשב הזה (קיוויתי שזה יעבוד עליו) אבל מסתבר שלא כל הקבצים הותקנו על הקשיח, והמחשב המעאפן לא מוכן לפתוח יותר מידי תוכונת, בקיצור, אני תקוע עם רבע תוכנה מוכנה ובלי מחשב, כך שאפילו לקודד את הקובץ כמו שאמרת אני לא יכול :banghead:.

טוב נחכה עד שנחזור הבייתה, ואז נצטרך שוב לשבת כל הלילה לכתוב את התוכנה... :(

קישור לתוכן
שתף באתרים אחרים

טוב, כתבתי את הקוד שמוסיף את הערים והרחובות לרשימה.

זה הקוד, אשמח להערות על הקוד, וכן על הערות שכתבתי (כדי שכל מי שיראה את הקוד יוכל להבין בקלות מה הולך שם), האם זה מספיק מפורט/מפורט מידי/לא מספיק מפורט/נוח לקריאה/ לא נוח לקריאה או שסתם לא כך מקובל לכתוב.

תודה.

עריכה: עכשיו אני לא מצליח לגרום לו להציג את הרחובות אחרי שבחרתי עיר, באיזה event אני צריך לבחור כדי שזה יפעל?

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...