Visual C++ .NET/Collections/NameValueCollection
Содержание
Adding value to NameValueCollection by indexer
#include "stdafx.h"
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
void main()
{
NameValueCollection^ nvCol = gcnew NameValueCollection();
nvCol->Add(nullptr, "void");
nvCol->Set("A", "a");
nvCol->Add("B", "b1");
nvCol->Add("B", "b2");
nvCol->Add("B", "b3");
nvCol->Add("C", "c1");
nvCol->Add("C", "c2");
nvCol->Add("C", "c3");
array<String^>^ keys = nvCol->AllKeys;
nvCol["F"] = "P";
}
Add to NameValueCollection
#include "stdafx.h"
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
void main()
{
NameValueCollection^ nvCol = gcnew NameValueCollection();
nvCol->Add(nullptr, "void");
nvCol->Set("A", "a");
nvCol->Add("B", "b1");
nvCol->Add("B", "b2");
nvCol->Add("B", "b3");
nvCol->Add("C", "c1");
nvCol->Add("C", "c2");
nvCol->Add("C", "c3");
}
Get all keys from NameValueCollection
#include "stdafx.h"
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
void main()
{
NameValueCollection^ nvCol = gcnew NameValueCollection();
nvCol->Add(nullptr, "void");
nvCol->Set("A", "a");
nvCol->Add("B", "b1");
nvCol->Add("B", "b2");
nvCol->Add("B", "b3");
nvCol->Add("C", "c1");
nvCol->Add("C", "c2");
nvCol->Add("C", "c3");
array<String^>^ keys = nvCol->AllKeys;
for (int i = 0; i < keys->Length; i++)
{
array<String^>^ vals = nvCol->GetValues(keys[i]);
Console::WriteLine("{0}:\t\t{1}", keys[i], vals[0]);
for (int j = 1; j < vals->Length; j++)
{
Console::WriteLine("\t\t{0}", vals[j]);
}
}
}
Get key and value from a NameValueCollection
#include "stdafx.h"
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
void main()
{
NameValueCollection^ nvCol = gcnew NameValueCollection();
nvCol->Add(nullptr, "void");
nvCol->Set("A", "a");
nvCol->Add("B", "b1");
nvCol->Add("B", "b2");
nvCol->Add("B", "b3");
nvCol->Add("C", "c1");
nvCol->Add("C", "c2");
nvCol->Add("C", "c3");
array<String^>^ keys = nvCol->AllKeys;
Console::WriteLine("Key @[1]:\t{0}", nvCol->GetKey(1));
Console::WriteLine("Values @[3]:\t{0}", nvCol[3]);
}
Get values by key in NameValueCollection
#include "stdafx.h"
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
void main()
{
NameValueCollection^ nvCol = gcnew NameValueCollection();
nvCol->Add(nullptr, "void");
nvCol->Set("A", "a");
nvCol->Add("B", "b1");
nvCol->Add("B", "b2");
nvCol->Add("B", "b3");
nvCol->Add("C", "c1");
nvCol->Add("C", "c2");
nvCol->Add("C", "c3");
array<String^>^ keys = nvCol->AllKeys;
for (int i = 0; i < keys->Length; i++)
{
array<String^>^ vals = nvCol->GetValues(keys[i]);
Console::WriteLine("{0}:\t\t{1}", keys[i], vals[0]);
for (int j = 1; j < vals->Length; j++)
{
Console::WriteLine("\t\t{0}", vals[j]);
}
}
}
Remove by key
#include "stdafx.h"
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
void main()
{
NameValueCollection^ nvCol = gcnew NameValueCollection();
nvCol->Add(nullptr, "void");
nvCol->Set("A", "a");
nvCol->Add("B", "b1");
nvCol->Add("B", "b2");
nvCol->Add("B", "b3");
nvCol->Add("C", "c1");
nvCol->Add("C", "c2");
nvCol->Add("C", "c3");
array<String^>^ keys = nvCol->AllKeys;
nvCol->Remove(nullptr);
}