개인적 용도로 프로젝트 (간단한 전화 번호부) 작업 중입니다. 내 연락처를 listview에 표시하고 연락처는 XML 파일에 저장됩니다. 그것은 이름, 도시, 주소, 생일 등의 연락처 데이터를 포함합니다. 기본적으로 알림 아이콘 (풍선)으로 연락처의 생일 일 때 알림을 받고 싶습니다. 예를 들어C# - 생일 알리미
: 요한의 생일 때이 경우
<People>
<Person>
<Name>John</Name>
<Hometown>Washington</Hometown>
<Address>231 Main Street</Address>
<Birthday>130299511993682082</Birthday>
<Phone>555-555-555</Phone>
<Email>[email protected]</Email>
<AdditionalInfo>Skype: john.123</AdditionalInfo>
</Person>
<People>
는 통지 아이콘이 나타납니다. 나는 이것을 어떻게하는지 전혀 모르기 때문에 여기에 완전히 붙어있다. 이론적으로 XML 파일에서 생일을 찾아서 현재 날짜와 비교해야합니다. 일치하는 경우 알림 아이콘이 나타납니다. 문제는 나 자신이 이것을하는 것을 모른다.
이것은 내 개인 무효 Main_Load (개체 보낸 사람, EventArgs 전자)의 일부로, 연락처를 목록보기에로드합니다. 나는 p.Birthday을 어떻게 든 사용할 수 있다고 생각했지만, (p.Birthday == DateTime.Now)이 경우 내 마음을 넘을 수있는 유일한 방법이 있습니다. 그러나 이것은 확실하게 일을 수행하는 적절한 방법이 아닙니다.
string path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
string phonebook_path = path + "\\Phonebook\\Contacts.xml";
if (!File.Exists(phonebook_path))
{
XmlTextWriter xW = new XmlTextWriter(phonebook_path, Encoding.UTF8);
xW.WriteStartElement("People");
xW.WriteEndElement();
xW.Close();
}
XmlDocument xDoc = new XmlDocument();
xDoc.Load(phonebook_path);
foreach (XmlNode xNode in xDoc.SelectNodes("People/Person"))
{
Person p = new Person();
p.Name = xNode.SelectSingleNode("Name").InnerText;
p.Hometown = xNode.SelectSingleNode("Hometown").InnerText;
p.Address = xNode.SelectSingleNode("Address").InnerText;
p.Birthday = DateTime.FromFileTime(Convert.ToInt64(xNode.SelectSingleNode("Birthday").InnerText));
p.Phone = xNode.SelectSingleNode("Phone").InnerText;
p.Email = xNode.SelectSingleNode("Email").InnerText;
p.AdditionalInfo = xNode.SelectSingleNode("AdditionalInfo").InnerText;
people.Add(p);
listView1.Items.Add(p.Name);
}
아이디어가 있으십니까?
코드가없는 경우에도 프로세스/아이디어를 게시해야합니다. stackoverflow에서 문제에 대한 이해를 보여 주면 답을 얻을 확률이 훨씬 높아집니다. 이렇게 완벽한 솔루션을 요구하는 질문은 너무 광범위하게 대답하는 것으로 간주됩니다. – ChrisK
OMG, 내가 벌어 들인 것을 이미 게시하지 않았습니까?! "이론적으로 XML 파일에서 생일을 찾고 현재 날짜와 비교해야합니다. 일치하는 경우 알림 아이콘이 나타나야합니다. 문제는 직접 알지 못합니다." 그리고 그것은 내 지식이 멈추는 곳입니다. 이 일을하는 방법을 이미 분명히했다면, 분명히 당신을 괴롭히지 않을 것입니다. 내가 할 수없는 유일한 부분은 XML 파일에서 오늘의 날짜가 다른 사람의 생일과 일치하는지 여부를 확인하는 것입니다. 나머지는 "케이크 한 조각"입니다. –
XML 파일을 읽는 방법을 알고 있습니까? 생일은 어떤 형식입니까? 그리고 무엇을 시도 했습니까? – Harrison